WAI-ARIA APG Menu and Menubar Pattern
Defines menu behavior, menuitem roles, Arrow key navigation, activation, Escape dismissal, submenus, and context-specific menu invocation such as Shift+F10.
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 |
|---|---|---|---|
| Action menu | Choose an action menu when commands are contextual to one object, selected set, resource, row, card, or local page surface. | Every item has a clear verb, object, and outcome category: command, navigation link, checkable command, disabled command, or destructive command. | APG defines menu roles, menuitem roles, composite focus, keyboard movement, disabled items, separators, activation, dismissal, and focus return for action-oriented menus. |
| Context menu | Choose context menu when commands are specific to the object, selection, or location where the user invoked the menu. | The menu opens only for the object, selection, or location that invoked it. | Supports menu semantics, keyboard movement, Escape behavior, and Shift+F10 invocation. |
| Menu / menubar | Choose a menu or menubar when the interface has a stable, application-like command hierarchy that users revisit frequently. | The persistent bar has role menubar and a visible label or accessible name. | APG defines menu and menubar as application command widgets with composite focus, top-level and submenu keyboard behavior, item roles, disabled state, checked state, groups, separators, labeling, and orientation. |
| Menu button | Choose a menu button when one trigger reveals a short local set of actions or command-like links. | The trigger is a button or equivalent control with a clear name, aria-haspopup set to menu or true, and aria-expanded synchronized with visibility. | APG defines menu focus movement, item roles, disabled items, separators, Enter and Space activation, Escape dismissal, focus return, and roving focus or aria-activedescendant. |
Comparisons supported by this source
- Action menu vs menu button vs button group vs command palette
APG documents menu item roles, composite focus, separators, disabled items, activation, dismissal, and keyboard expectations for action-oriented menus.
- Context menu vs action menu vs menu button vs popover
APG supports menu roles, keyboard movement, activation, Escape behavior, and Shift+F10 context-specific invocation.
- Menu / menubar vs menu button vs mega menu vs global navigation
APG defines menu and menubar roles, composite focus, top-level and submenu keyboard behavior, disabled item focusability, separators, groups, and checked item state.
- Menu button vs command palette vs select vs confirmation dialog
APG defines menu composite keyboard behavior, item roles, disabled items, separators, activation, Escape dismissal, and focus return.
Evidence Role
This source is treated as spec evidence. Its value comes from the specific claims and setting described above.
Publisher: W3C WAI. Last checked: .