- Icon in Breadcrumb item
- Icon Position
- Icon Only
- Show icon only for first item
Contact Support
Icons in EJ2 TypeScript Breadcrumb control
2 May 202318 minutes to read
The Breadcrumb component contains an icon/image to provide a visual representation of an item.
Icon in Breadcrumb item
To load the icon/image on the breadcrumb item, set the iconCss
property.
Breadcrumb with Font Icon
To place the font icon on the breadcrumb item, set the iconCss
property to e-icons
with the required icon CSS. By default, the icon is positioned to the left side of the item.
import { BreadcrumbItemModel, Breadcrumb } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
iconCss: 'e-icons e-home',
url: "https://ej2.syncfusion.com/demos",
},
{
text: "Components",
url: "https://ej2.syncfusion.com/demos/#/material/grid/grid-overview",
},
{
text: "Navigations",
url: "https://ej2.syncfusion.com/demos/#/material/breadcrumb/default",
},
{
text: "Breadcrumb",
url: "./breadcrumb/default",
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div class="control-section">
<nav id="breadcrumb"></nav>
</div>
</div>
</body>
</html>
Breadcrumb with Image
In the Breadcrumb component, images can be added for the items using the iconCss
property. In the following example, an image was added to the breadcrumb item by using the iconCss class e-image-home
and specifying height and width for the css class.
import { BreadcrumbItemModel, Breadcrumb } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
iconCss: 'e-image-home',
url: "https://ej2.syncfusion.com/demos",
},
{
text: "Components",
url: "https://ej2.syncfusion.com/demos/#/material/grid/grid-overview",
},
{
text: "Navigations",
url: "https://ej2.syncfusion.com/demos/#/material/breadcrumb/default",
},
{
text: "Breadcrumb",
url: "./breadcrumb/default",
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div class="control-section">
<nav id="breadcrumb"></nav>
</div>
</div>
</body>
</html>
Breadcrumb with SVG Image
In the Breadcrumb component, SVG image can be added for the items using the iconCss
property. In the following example, SVG image was added to the breadcrumb item by using the iconCss class e-svg-home
and specifying height and width for the css class.
import { BreadcrumbItemModel, Breadcrumb } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
iconCss: 'e-svg-home',
url: "https://ej2.syncfusion.com/demos",
},
{
text: "Components",
url: "https://ej2.syncfusion.com/demos/#/material/grid/grid-overview",
},
{
text: "Navigations",
url: "https://ej2.syncfusion.com/demos/#/material/breadcrumb/default",
},
{
text: "Breadcrumb",
url: "./breadcrumb/default",
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div class="control-section">
<nav id="breadcrumb"></nav>
</div>
</div>
</body>
</html>
Icon Position
By default, the icon is positioned to the left side of the item in the Breadcrumb component. If you need to add the icon to right of the breadcrumb item, add the e-icon-right
class to the required item. In the following example, the e-icon-right
class was added to the breadcrumb items using the beforeItemRender
event. You can also add the e-icon-right
class to the cssClass
property of the breadcrumb component to position the icons to the right of all breadcrumb items.
import { BreadcrumbItemModel, Breadcrumb, BreadcrumbBeforeItemRenderEventArgs } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
text: "Program Files",
iconCss: "e-icons e-folder"
},
{
text: "Services",
iconCss: "e-icons e-folder"
},
{
text: "Config.json",
iconCss: "e-icons e-file"
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
new Breadcrumb({
items: items,
enableNavigation: false,
beforeItemRender: (args: BreadcrumbBeforeItemRenderEventArgs) => {
if (args.item.text !== '') {
args.element.classList.add('e-icon-right');
}
}
}, '#breadcrumb2');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div id="breadcrumb-control" class="control-section">
<div class="header"><b>Icon Position - Left</b></div><br />
<nav id="breadcrumb"></nav>
<br /><br/>
<div class="header"><b>Icon Position - Right</b></div><br />
<nav id="breadcrumb2"></nav>
</div>
</div>
</body>
</html>
Icon Only
To display only icons for the items, add icons using the iconCss
property. In the following example, breadcrumb items were demonstrated with only icons by providing the iconCss
property.
import { BreadcrumbItemModel, Breadcrumb } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
iconCss: 'e-icons e-home'
},
{
iconCss: "e-icons e-folder"
},
{
iconCss: "e-icons e-file"
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div class="control-section">
<nav id="breadcrumb"></nav>
</div>
</div>
</body>
</html>
Show icon only for first item
To show icon only for the first item in the Breadcrumb component, add icons to the first item using the iconCss
property. In the following example, the icon was provided only for the first item by setting the iconCss
property.
import { BreadcrumbItemModel, Breadcrumb } from '@syncfusion/ej2-navigations';
import { enableRipple } from '@syncfusion/ej2-base';
enableRipple(true);
//Breadcrumb items definition
let items: BreadcrumbItemModel[] = [
{
iconCss: 'e-icons e-home',
url: "https://ej2.syncfusion.com/demos",
},
{
text: "Components",
url: "https://ej2.syncfusion.com/demos/#/material/grid/grid-overview",
},
{
text: "Navigations",
url: "https://ej2.syncfusion.com/demos/#/material/breadcrumb/default",
},
{
text: "Breadcrumb",
url: "./breadcrumb/default",
}
];
new Breadcrumb({
items: items,
enableNavigation: false
}, '#breadcrumb');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Essential JS 2</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="description" content="Essential JS 2" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/29.1.33/ej2-navigations/styles/material.css" rel="stylesheet" />
<!--style reference from app-->
<link href="styles.css" rel="stylesheet" />
<!--system js reference and configuration-->
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='loader'>LOADING....</div>
<div id='container'>
<div class="control-section">
<nav id="breadcrumb"></nav>
</div>
</div>
</body>
</html>