Explore behaviors before defining the interface.
Quick guide for designers
Always consider the context of the application, even when the guidance follows a standard pattern. Interaction design documents intent. Behavior must be verified in the implementation.
When to use
Use to show the current location within a hierarchy and return to earlier levels.
What to draw
Show levels in order, separators, and a distinguishable current page.
How it behaves
Links lead to earlier levels and activate with Enter. The last item represents the current page; separators do not receive focus.
What to document in Figma
Record destinations and current-page identification, avoiding navigation actions on the current item.
How to review
Check whether the purpose and states are clear on small and large screens and with zoom. Verify documented behavior in the implementation, including keyboard and screen reader use where applicable.
Full guidance
Interaction Design
Questions to ask when designing interactive components of type Breadcrumb.
Important:
Depending on the context in which you build your components, there may be further questions, and some listed here may not be necessary. Assess each case individually.
Designing for "no interaction"
- Before interacting, can you visually tell that the component is interactive?
- Before interacting, can you visually tell that this is a navigation menu?
- Before interacting, can you visually tell the indicated current position?
Designing for mouse use (any pointing device)
- Is there visual feedback when hovering over actionable components?
- Is there visual feedback when clicking the actionable component?
- Does clicking an actionable component load the screen and update the components' states?
Designing for gesture use
- Is there visual feedback when activating the component?
- Does activating an actionable component load the screen and update the components' states?
Designing for keyboard use (any non-pointing device)
- Is there visual feedback when focusing the actionable component?
- Can you interact with the actionable component using the "
enter"? - When activated by keyboard, does the actionable component take the person to its corresponding content?
Designing for screen reader use
- When focusing an actionable breadcrumb component, can you hear that it is a link rather than a button?
- When focusing an actionable breadcrumb component, can you clearly hear the link's purpose?
- When focusing the final breadcrumb item, can you hear that it is the current screen and does not navigate anywhere?
Interaction methods
Possible interaction methods for components of type Breadcrumb.
Important:
Only the main methods are listed here. Custom components require further study.
Mouse interaction (any pointing device)
- On hover, the component should provide visual feedback confirming that interaction is possible.
- On a mouse click, the component should provide visual feedback confirming the click.
- On a mouse click, the content should load.
- When clicking with the mouse, does the final item avoid navigating anywhere and represent the current screen?
Keyboard interaction (any non-pointing device)
- When focused with the keyboard, the component should provide visual feedback with a visible focus indicator.
- It should be possible to navigate to the next or previous item using the
TABorSHIFT+TABkeys respectively. -
It should be possible to activate actionable components with the
ENTER. - The last item may receive focus but should not be actionable.
- Component separators do not receive keyboard focus.
Keyboard (or gesture) interaction + screen reader
- When focusing the breadcrumb group, you can identify it as an ordered list.
- When focusing an actionable breadcrumb component, you can hear that it is a link.
- When focusing an actionable breadcrumb component, you should be able to clearly identify the link's purpose.
- If focus is configured on the final breadcrumb item, you should be able to hear that it is the current screen.
Gherkin
BDD (Behavior-Driven Development) methodology focusing on three pillars: User Stories, Acceptance Criteria, and Gherkin Syntax (Given, When, Then).
Scenario: Given that I am on a page containing breadcrumbs
Keyboard navigation
- WHEN I use the
Tabto activate a link - The focus I SEE is strongly indicated visually
- THEN, when I use the
Enterto activate the link - I SEE my browser navigating somewhere
Desktop screen reader
-
When I use a screen reader on a computer (NVDA, JAWS, VoiceOver) and use the
Tabkey to move focus to a link- I SEE that link names match destination page titles
- I HEAR links identified as reference points in a breadcrumb navigation system.
- I HEAR the current page link indicated when focus is on the page.
- I can HEAR screen reader shortcuts as a navigation landmark.
- THEN, when I use the
Enterto activate the link - I HEAR that my browser is navigating somewhere.
Mobile screen reader
-
WHEN I use a screen reader on a phone (TalkBack, VoiceOver) and swipe to focus a link, the following happens:
- I HEAR that link names match destination page titles
- I HEAR links identified as reference points in a breadcrumb navigation system.
- I HEAR the current page link indicated when focus is on the page.
- I can HEAR screen reader shortcuts as a navigation landmark.
- THEN, when I double-tap to activate the link
- I HEAR that my browser is navigating somewhere.
Considerations
Considerations for components of type Breadcrumb.
- Component separators should be purely visual and should not receive keyboard focus or be read by screen readers.
- Breadcrumbs are navigation components in an ordered list. Implement them with appropriate semantics.
- The final breadcrumb item should not be actionable because it is the current screen. However, you may configure keyboard focus to announce that it is the current screen.
References
Additional references for components of type Breadcrumb.
Important:
Most references are on the course platform alongside the lessons cited in this material.
Disclaimer:
The links listed here are a curated collection of references where you can find implemented components, rather than recommendations. There is no unified implementation format and no guarantee that these links follow every design pattern. Direct questions to the teams responsible for the linked materials. Before copying a model, remember that all materials are constantly updated and that patterns, particularly proprietary ones, may change.
Design patterns
- Apple - Human Interface Guidelines - Path Controls open_in_newexternal link - opens in a new window (opens in a new tab)
- Google - Material Design open_in_newexternal link - opens in a new window (opens in a new tab)
- HTML standards documentation - Breadcrumb Navigation open_in_newexternal link - opens in a new window (opens in a new tab)
- W3C APG - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
Design System
- W3C Design System: Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Deque Cauldron: Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- eBay MIND Patterns: Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Gov.UK - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- US.gov - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Gov.AU - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Salesforce Lightning - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- IBM Carbon - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Adobe Spectrum - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Github Primer - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)
- Bootstrap - Breadcrumb open_in_newexternal link - opens in a new window (opens in a new tab)