WAI-ARIA APG Listbox Pattern
Defines listbox as a visible list of selectable options, with single-select and multi-select variants, option naming constraints, grouped options, focus versus selection, selection-follows-focus tradeoffs, typeahead, Home and End, aria-activedescendant, aria-multiselectable, aria-selected or aria-checked, and cautions against interactive elements inside options.
What this source can teach
Use this source to check a technical or accessibility requirement against its exact wording and scope.
- Start with the original. Open the source and find the guidance or example relevant to your task.
- Trace the connection. Use the claim notes below to see how this site applies the source to specific patterns.
- Check the setting. Compare the source's platform, people, and constraints with your own decision.
Pattern Decisions This Source Supports
| Pattern | Supported decision | Required contract | Claim note |
|---|---|---|---|
| Inaccessible custom select | Flag this anti-pattern when a custom dropdown cannot be opened, navigated, selected, dismissed, and reviewed by keyboard. | The trigger exposes an accessible name, current value, role, and expanded or collapsed state. | APG listbox guidance documents keyboard interaction, labeling, active option, and selected state for custom listbox-style alternatives. |
| Listbox | Choose a listbox when options should remain visible and users select one or more values from the list itself. | The listbox has a visible label or accessible name and contains or owns every option. | APG defines listbox as a visible selectable option list, with single and multi-select behavior, focus versus selection, typeahead, Home and End, grouped options, selection state, and nested-interactive-content limits. |
| Multi-select | Choose multi-select for long, searchable, or compact multi-choice sets where a visible checkbox group would be too large. | Users can search, add, and remove values without losing their current selection. | APG listbox guidance documents multiple selection states, keyboard navigation, labels, and aria-multiselectable behavior for custom implementations. |
| Select | Choose select sparingly for a single choice from a moderate known list when space or task priority justifies collapsing options. | The selected value remains visible after the menu closes. | APG listbox guidance documents keyboard, labeling, and selected-state requirements for custom listbox-style select alternatives. |
| Transfer list | Choose transfer list when the interface has a source collection and a destination collection, and moving items between them is the core task. | Each pane has a visible label and accessible name that describes whether it contains available or selected items. | APG listbox guidance covers option roles, selected state, multiple selection, aria-multiselectable, keyboard movement, typeahead, and accessible option naming. |
Comparisons supported by this source
- Checkbox group vs multi-select
APG listbox guidance is the contrast source for longer or custom multi-selection widgets with selected-state and keyboard requirements.
- Inaccessible custom select vs select vs autocomplete vs multi-select
APG listbox guidance documents keyboard, labeling, selected state, and option behavior for custom listbox-style choices.
- Listbox vs select vs combobox vs multi-select
APG defines visible listbox options, single and multiple selection, focus versus selection, typeahead, Home and End, aria-selected or aria-checked, option groups, and restrictions on interactive content inside options.
- Transfer list vs multi-select vs listbox vs checkbox group
APG listbox guidance covers option roles, multi-selection, aria-multiselectable, selected state, keyboard movement, typeahead, and restrictions on interactive option descendants.
Evidence Role
This source is treated as spec evidence. Its value comes from the specific claims and setting described above.
Publisher: W3C Web Accessibility Initiative. Last checked: .