- Home
- Primitives
- Combobox
- Accessibility
Combobox
Keyboard, focus, semantic, and consumer responsibilities for Combobox.
Accessibility
Automated evidence
The evidence summary below is generated from the repository’s executable axe scan for @solidiom/combobox. It records automated checks only; it is not a claim of complete conformance.
Manual verification
Review keyboard navigation, active-descendant highlighting, input focus retention, zoom/reflow, touch targets, reduced motion, contrast, and screen-reader announcements in the consuming product. A consumer’s layout, labels, and filtering logic can change the accessibility result.
Accessibility contract
Keyboard
- Enter
- Selects the currently highlighted item and closes the listbox.
- Escape
- Closes the listbox without selecting. Focus remains on the input.
- ArrowDown
- Opens the listbox if closed, or moves highlight to the next item.
- ArrowUp
- Opens the listbox if closed, or moves highlight to the previous item.
- Tab
- Closes the listbox and moves focus to the next focusable element.
Focus
- The input retains DOM focus at all times while the listbox is open.
- Active-descendant pattern visually highlights the current item without moving focus.
- Focus returns to the input after the listbox closes.
Semantics
- Input has role combobox.
- Input exposes aria-autocomplete=list indicating suggestions are presented.
- Content has role listbox.
- Each item has role option.
ARIA
- Input exposes aria-expanded reflecting open state.
- Input exposes aria-controls pointing to the listbox id.
- Input exposes aria-activedescendant pointing to the highlighted item id.
- Each item exposes aria-selected reflecting selection state.
Consumer responsibilities
- Provide an accessible label for the input via a visible label element or aria-label.
- Communicate an empty state when no items match the current filter.
- Ensure item text values are unique and descriptive.
Review status: Draft — not yet reviewed
This contract describes what the primitive guarantees. Consuming products remain responsible for labels, layout, and workflow decisions that affect the final accessibility result.
Automated evidence
Axe scan summary
- Passes
- 13
- Violations
- 0
- Incomplete
- 0
Latest executed scan: Aug 13, 2026, 10:47 PM
Evidence IDs: axe-combobox-scan-v1
Automated checks cover only the recorded fixture and do not establish complete accessibility conformance.