All Projects → scottaohara → a11y_breadcrumbs

scottaohara / a11y_breadcrumbs

Licence: MIT license
Accessible breadcrumb pattern

Programming Languages

HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to a11y breadcrumbs

auto-vo
Screen reader automation tools by AccessLint, including VoiceOver.js and Auto-VO
Stars: ✭ 118 (+168.18%)
Mutual labels:  accessibility, a11y
buttonbuddy
Learn about accessible button contrast then generate your own accessible button color palette
Stars: ✭ 60 (+36.36%)
Mutual labels:  accessibility, a11y
AStack
The Missing SwiftUI Adaptive and Accessible Stacks Library.
Stars: ✭ 110 (+150%)
Mutual labels:  accessibility, a11y
accessible-forms
A series of HTML test cases to determine how specific elements are announced in different screen reader / browser combinations.
Stars: ✭ 159 (+261.36%)
Mutual labels:  accessibility, a11y
inclusive-elements
Accessible, lightweight, unstyled implementations of common UI controls.
Stars: ✭ 17 (-61.36%)
Mutual labels:  accessibility, a11y
togglific
Do you find web animations distracting? Togglific provides a distraction-free web experience!
Stars: ✭ 17 (-61.36%)
Mutual labels:  accessibility, a11y
accessibility-for-teams
A ‘quick-start’ guide for embedding accessibility and inclusive design practices into your team’s workflow
Stars: ✭ 80 (+81.82%)
Mutual labels:  accessibility, a11y
chusho
A library of bare & accessible components and tools for Vue.js 3
Stars: ✭ 47 (+6.82%)
Mutual labels:  accessibility, a11y
sa11y
Sa11y is an accessibility quality assurance tool that visually highlights common accessibility and usability issues. Geared towards content authors, Sa11y straightforwardly identifies errors or warnings at the source with a simple tooltip on how to fix them.
Stars: ✭ 137 (+211.36%)
Mutual labels:  accessibility, a11y
a11ycolor
🌈 Generate the nearest accessible color
Stars: ✭ 29 (-34.09%)
Mutual labels:  accessibility, a11y
lint-html-with-css
Lint HTML with CSS. A collection of CSS snippets from the hashtag #lintHTMLwithCSS on twitter. These CSS snippets intend to warn developers about common mistakes made in HTML.
Stars: ✭ 35 (-20.45%)
Mutual labels:  accessibility, a11y
cluse
Sketch Plugin to check and adjust color contrast accessibility with live preview and sliders. Endorsed by Sketch.
Stars: ✭ 54 (+22.73%)
Mutual labels:  accessibility, a11y
bones
Accessible HTML code patterns for common UI widgets such as tabs, menus, dialogs, etc.
Stars: ✭ 79 (+79.55%)
Mutual labels:  accessibility, a11y
react-awesome-toasts
Toast notifications for react.
Stars: ✭ 64 (+45.45%)
Mutual labels:  accessibility, a11y
a11y-contracting
Building Accessibility Best Practices into Contracting
Stars: ✭ 43 (-2.27%)
Mutual labels:  accessibility, a11y
aria-at
Assistive Technology ARIA Experience Assessment
Stars: ✭ 115 (+161.36%)
Mutual labels:  accessibility, a11y
makeup-js
Mono-repo for all vanilla JavaScript utility modules and headless ui
Stars: ✭ 28 (-36.36%)
Mutual labels:  accessibility, a11y
openacr
OpenACR is a digital native Accessibility Conformance Report (ACR). The initial development is based on Section 508 requirements. The main goal is to be able to compare the accessibility claims of digital products and services. A structured, self-validated, machine-readable documentation will provide for this.
Stars: ✭ 61 (+38.64%)
Mutual labels:  accessibility, a11y
dorai-ui
Accessible, unstyled, open-sourced, and fully functional react component library for building design systems
Stars: ✭ 34 (-22.73%)
Mutual labels:  accessibility, a11y
accessibility-ruleset-runner
eBay Accessibility Ruleset Runner automates 20% of WCAG 2.0 AA recommendations, saving time on manual testing.
Stars: ✭ 24 (-45.45%)
Mutual labels:  accessibility, a11y

Accessible Breadcrumbs

Standard pattern for breadcrumb navigations. Use this pattern with the help of your CMS or site generator of choice, to populate the breadcrumb navigation items.

How does it work?

A breadcrumb is a specific type of navigation pattern. It represents the path from the index, or home page, to the current page that one is viewing.

<nav class="breadcrumb-nav" aria-label="breadcrumb">
  <ol>
    <li>
      <a href="...">
        Index
      </a>
    </li>
    <li>
      <a href="...">
        Sub page
      </a>
    </li>
    <li>
      <a href="..." aria-current="page">
        The current page
      </a>
    </li>
  </ol>
</nav>

In the markup example, the <nav> element has an aria-label="breadcrumb" to announce this as a "breadcrumb navigation" to screen readers.

The <ol> is semantically appropriate, as these links are meant to be represented in a hierarchical structure. In reality though, the <ol> merely exposes the breadcrumb as a list. There is no difference between an <ol> and a <ul> if their listmarkers are removed.

The aria-current="page", or aria-current="location" should be placed on the last element in the breadcrumb navigation. This will append "current page (or) location" to the announcement of the link, generally after its accessible name has been announced. For example: "About, current page/location".

CSS pseudo elements are used to add in dividers between the list elements. The current page is has unique style variations to help further distinguish it as the current page.

You can review the breadcrumb demo page for additional information and usage notes.

License & Such

This pattern was written by Scott O'Hara (Website, Twitter), referencing resources such as Using the aria-current attribute, and verifying with the ARIA Authoring Practices.

It has an MIT license.

Use it, modify it, contribute to it to help make your project more accessible :)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].