Skip to main content
BEEQ Breadcrumb component overview

Breadcrumb component overview

A breadcrumb is a form of contextual navigation displaying a user’s position within a site hierarchy, enabling them to navigate back through the levels, while it should not be misleading as a primary navigation tool.

When to use

Use breadcrumbs when
  • Navigating large content hierarchies with more than two levels
  • Users need compact context for where they are in the navigation hierarchy
  • Users need to move back through parent levels from the current page

Do not use breadcrumbs when
  • They would substitute the primary navigation
  • The product has single-level navigation and breadcrumbs would add unnecessary clutter
  • The user is in a multistep process; use a progress indicator instead

Anatomy

BEEQ Breadcrumb component anatomy

Breadcrumb component anatomy

Design guidelines

Placement

Breadcrumbs should appear near the top of the page, above the page title or directly below the page header.

Label and icon

States

All parent breadcrumb items share the same brand primary color. Each interactive state provides a distinct visual cue:

Sizing and spacing

Breadcrumb items use consistent internal padding and separator spacing controlled by CSS custom properties. You can adjust these tokens when integrating the breadcrumb into a custom page header:
  • --bq-breadcrumb-item--paddingY — vertical padding of each item
  • --bq-breadcrumb-item--padding-start / --bq-breadcrumb-item--padding-end — horizontal padding of each item
  • --bq-breadcrumb-item--padding-start-separator / --bq-breadcrumb-item--padding-end-separator — spacing around the separator

Truncation

Show a maximum of four items in the breadcrumb trail. When the path is deeper, keep the first (root) and last (current page) items visible and collapse the intermediate levels into a dropdown so users can still reach any level.

Usage

The examples below cover the most common ways to use breadcrumbs in BEEQ.

Default

Use a default breadcrumb to show the current page within a hierarchy. When href is not set, each breadcrumb item renders as a button.
Always place bq-breadcrumb-item elements directly inside bq-breadcrumb. Items rendered outside the component will not receive separator or aria-current handling.

Custom separator

Use the separator slot to replace the default / separator.
Use the same separator throughout a breadcrumb trail. Mixing separator styles in a single trail breaks visual consistency.

Options

The following example shows how to combine icons with breadcrumb items.

With icons

Icons next to labels help users recognize categories at a glance. Use size="16" icons and always pair them with a text label or aria-label for screen reader clarity.

Best practices

DoFor breadcrumbs on detail pages, include the page type (Create, Edit, View) followed by the item name.

Don’tAvoid indicating the item number or using dynamically generated names without context.

DoTruncate labels longer than 30 characters with an ellipsis and show the full text in a tooltip on hover.

Don’tDisplay overly long labels that wrap or truncate without a way to view the complete text.

DoShow a maximum of four items in the breadcrumb trail. For longer paths, truncate and show the first and last items.

Don’tDisplay more than four items in a single breadcrumb trail, as it overloads the visual and reduces usability.

DoMake all parent breadcrumb items clickable links, including the current page as the last non-interactive item.

Don’tDisplay the current page as a clickable link; it should be non-interactive text to reflect the user’s current location.

Accessibility

  • Navigation — navigate to each link in the breadcrumb using Tab and activate it with Enter.
  • Landmark label — use the label prop to set an aria-label on the <nav> landmark. The default value is Breadcrumbs; override it when multiple navigation regions exist on the same page.
  • Current page — the last breadcrumb item receives aria-current="page" automatically.
  • Icon-only items — when a breadcrumb item contains only an icon, set aria-label on the bq-breadcrumb-item to describe the destination (e.g. aria-label="Home page").
  • Decorative icons — when an icon appears alongside a visible text label, set aria-hidden="true" on the bq-icon so screen readers do not announce it twice.

API reference

bq-breadcrumb properties

bq-breadcrumb-item properties

Events

Events are emitted by bq-breadcrumb-item.

Slots

bq-breadcrumb

bq-breadcrumb-item

CSS parts

bq-breadcrumb

bq-breadcrumb-item

CSS custom properties

Resources

Interactive playground

Explore all breadcrumb configurations in Storybook

Source code

View the breadcrumb implementation on GitHub