Welcome

We provide examples of accessible user interface components—use your keyboard or screen reader to explore them and learn the expected behaviors.

Featured Patterns

  • Accordion

    Simple show/hide details with a native control.

  • Tabs

    Keyboard-accessible tab interface per APG.

  • Modal

    Dialog with focus trap and inert background.

Patterns

Accordion

Keyboard-only navigation

  • Press Tab until a question (button) is focused.
  • Press Enter or Space to expand/collapse that section.
  • Use / to move to the next/previous question. (Optional)
  • Use Home / End to jump to the first/last question.
  • When a section is collapsed, its content isn’t tabbable (expected).
  • When expanded, use Tab / Shift+Tab to move through links, buttons, or fields inside.
  • If present, the Open/Close all button toggles every section; focus stays on that button after toggling.

JAWS / NVDA navigation (Windows)

  • Stay in Browse/Virtual mode by default.
  • Use B / Shift+B to move to the next/previous button (each question is a button).
  • Or use H / Shift+H to jump between headings for each question.
  • Press Enter or Space on a question to expand/collapse; the reader announces “expanded/collapsed”.
  • Inside an expanded panel, use arrow keys to read line by line, or Tab to jump between interactive elements.
  • Find the Open/Close all control with B; toggle with Space/Enter (JAWS/NVDA announce “pressed/not pressed”).

Breadcrumb

Shows where you are in the site. The current page is not a link; earlier items link to their parent pages (per WAI-ARIA APG).

Keyboard

  • Use Tab / Shift+Tab to move through the breadcrumb links; press Enter to follow one.

Screen readers

  • NVDA (Windows): Press D to jump between landmarks until you hear “Breadcrumb, navigation”, or press NVDA+F7 and choose the Landmarks tab. Then Tab through the links; the last item announces as “current page.”
  • JAWS (Windows): Press R / Shift+R to move between regions (landmarks) to “Breadcrumb”, or use Insert+F7 for the Links List. Tab through links; the last item is plain text with “current page.”

Button

Use for the main action on a page. Press Enter or Space to activate.

Keyboard

  • Tab / Shift+Tab moves focus to the button.
  • Enter or Space activates it and shows an alert.
  • Esc key closes alert and returns users focus to the triggering element (Button).

Screen readers (NVDA / JAWS / VoiceOver)

  • Announces as “button.” Activate with Enter/Space (or VO+Space on macOS). A native browser alert appears.

Sortable table

Demo data table you can sort by each column
Alex Rivera 29 Mango 2022-03-14
Bianca Nguyen 41 Apple 2021-10-02
Carlos Lee 35 Banana 2020-07-18
Dina O’Connor 27 Cherry 2024-01-09
Elijah Patel 33 Orange 2019-05-30
Farah Singh 39 Grape 2023-06-22

Keyboard-only navigation

  • Use Tab to focus a column header button.
  • Press Enter or Space to sort that column. Re-press to toggle ascending/descending.
  • Focus stays on the same header button after sorting.
  • Use Tab/Shift+Tab to move across header buttons or into table cells (If actionable).

JAWS / NVDA navigation

  • Jump to the next/previous table with T / Shift+T.
  • Move cell-by-cell with Ctrl+Alt+///. With proper headers, the screen reader announces the cell’s value with its column/row header.
  • JAWS: press Ctrl+Alt+NumPad 5 to re-announce the current cell’s row/column headers on demand.
  • NVDA (fallback when headers aren’t coded): set header associations manually:
    • NVDA+Shift+C = mark current row as column headers (announce when moving down).
    • NVDA+Shift+R = mark current column as row headers (announce when moving right).
  • Tips: keep focus on a header button to sort; the polite status will announce “Sorted by …, ascending/descending.”

Tooltips

Hover or focus this help icon:

Manually toggle this info tip:

Keyboard-only navigation

  • Tab to a tooltip trigger (e.g., the “?” icon).
  • Automatic tip: the tooltip appears on focus; press Esc to dismiss.
  • Manual tip: press Enter or Space to toggle; focus stays on the trigger; press Esc to close.
  • Shift focus away (e.g., Tab) and automatic tooltips close.

JAWS / NVDA navigation

  • Use Tab to reach the trigger. The tooltip content is associated via aria-describedby (automatic) or aria-controls/aria-expanded (manual).
  • Automatic tip: on focus, the tooltip is announced. Press Esc to dismiss.
  • Manual tip: activate the button with Enter/Space. Screen reader announces the state change; the tooltip content is available while expanded.
  • Tooltips are not focusable and contain no interactive elements.