A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | AB | AC | AD | AE | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | HTML Element | UI Pattern | WAI-ARIA role | Semantic meaning | Top layer | Positioning | Transient? ("One at a time"?) | Dismiss behavior | Invocation | Initial focus | Focus management | Focus trapping | Keyboard behavior | ||||||||||||||||||
2 | <dialog> | Existing non-modal <dialog> | "dialog" (non-modal) | A dialog is a descendant window of the primary window of a web application. For HTML pages, the primary application window is the entire web document, i.e., the body element. Dialogs are most often used to prompt the user to enter or respond to information. A dialog that is designed to interrupt workflow is usually modal. | Yes | Fixed, anchored to invoking element. | No | Stays open until closed by user action (e.g. clicking "Close") | Click on a button/invoker | Focus the first focusable descendant (modulo this) | Required | No | None | ||||||||||||||||||
3 | <popup> | teaching UI | "dialog" (non-modal) | Same as "dialog" role above | Yes | Fixed, anchored to context element for teaching UI. | Yes | Stays open until closed by user action (e.g. clicking "Next" or "Close") | Automatic on page load (?) | Typically not focusable | Not required | No (not focusable) | None (not focusable) | ||||||||||||||||||
4 | <popup> | date picker | "dialog" (non-modal) | Same as "dialog" role above | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Clicking a date also closes the picker. | Click on picker icon | Focus selected date (or today if none) | Required | No (tabbing out of the list closes the picker) | Arrows navigate dates | ||||||||||||||||||
5 | <popup> | generic picker | "dialog" (non-modal) | Same as "dialog" role above | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Picking an item also closes the picker. | Click on picker icon | Focus currently-selected item (or first item if none) | Required | No (tabbing out of the list closes the picker) | Arrows navigate options | ||||||||||||||||||
6 | <popup> | "Generic" popup | "dialog" (non-modal) | Same as "dialog" role above | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to close. | Click on a button/invoker | Typically not focused when opened | Required | No | None | ||||||||||||||||||
7 | <listbox> | selectmenu listbox | "listbox" | A widget that allows the user to select one or more items from a list of choices. See related combobox and list. Items within the list are static and, unlike standard HTML select elements, may contain images. List boxes contain children whose role is option. To be keyboard accessible, authors SHOULD manage focus of descendants for all instances of this role, as described in Managing Focus. | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Picking an item also closes the picker. | Click on the in-page element | Focus first element, or previously selected option | Required | No (tabbing out of the list closes the picker) | Arrows navigate options | ||||||||||||||||||
8 | <listbox> | autocomplete options | "listbox" | Same as "listbox" role above | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Picking an item also closes the picker. | focus a text field | Focus first element | Required | No (tabbing out of the list closes the picker) | Arrows navigate options | ||||||||||||||||||
9 | <listbox> | combobox | "listbox" | Same as "listbox" role above | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Picking an item also closes the picker. | Click on the in-page element, or sometimes focus a text field | Remain on activating element | Required | No (tabbing out of the list closes the picker) | Arrows navigate options | ||||||||||||||||||
10 | <actionmenu> | action menu / context menu | "menu" | A type of widget that offers a list of choices to the user. A menu is often a list of common actions or functions that the user can invoke. The menu role is appropriate when a list of menu items is presented in a manner similar to a menu on a desktop application. To be keyboard accessible, authors SHOULD manage focus of descendants for all instances of this role, as described in Managing Focus. | Yes | Fixed, anchored to invoking element. | Yes | Light-dismiss to cancel. Picking an item also closes the picker. | Click on the menu button | Focus first element | Required | No | None | ||||||||||||||||||
11 | <navmenu> | navigation menu | "navigation" | A collection of navigational elements (usually links) for navigating the document or related documents. | ? | Fixed, anchored to invoking element. | ? | Light-dismiss to cancel. Picking an item navigates. | Click on the menu button | Focus first element | Not required | No | None | ||||||||||||||||||
12 | <tooltip> | tooltip | "tooltip" | A contextual popup that displays a description for an element. The tooltip typically becomes visible in response to a mouse hover, or after the owning element receives keyboard focus. | Yes | Fixed, anchored to invoking element. | Yes | Stop hovering over item | Hover over item | Typically not focusable | Not required | No (not focusable) | None (not focusable) | ||||||||||||||||||
13 | <alert> | toast/alert | "alert" | A type of live region with important, and usually time-sensitive, information. Alerts are used to convey messages to alert the user. Alerts are assertive live regions and will be processed as such by assistive technologies. Neither authors nor user agents are required to set or manage focus to them in order for them to be processed. Since alerts are not required to receive focus, content authors SHOULD NOT require users to close an alert. If an alert requires focus to close the alert, then content authors SHOULD use alertdialog instead. | Yes | Fixed. Likely doesn't need anchor positioning. | No (?) | Asynchronous / JS, or a button to dismiss | Asynchronous / JS | Typically not focused when opened | Not required | No | None | ||||||||||||||||||
14 | |||||||||||||||||||||||||||||||
15 | |||||||||||||||||||||||||||||||
16 | |||||||||||||||||||||||||||||||
17 | |||||||||||||||||||||||||||||||
18 | |||||||||||||||||||||||||||||||
19 | |||||||||||||||||||||||||||||||
20 | |||||||||||||||||||||||||||||||
21 | |||||||||||||||||||||||||||||||
22 | |||||||||||||||||||||||||||||||
23 | |||||||||||||||||||||||||||||||
24 | |||||||||||||||||||||||||||||||
25 | |||||||||||||||||||||||||||||||
26 | |||||||||||||||||||||||||||||||
27 | |||||||||||||||||||||||||||||||
28 | |||||||||||||||||||||||||||||||
29 | |||||||||||||||||||||||||||||||
30 | |||||||||||||||||||||||||||||||
31 | |||||||||||||||||||||||||||||||
32 | |||||||||||||||||||||||||||||||
33 | |||||||||||||||||||||||||||||||
34 | |||||||||||||||||||||||||||||||
35 | |||||||||||||||||||||||||||||||
36 | |||||||||||||||||||||||||||||||
37 | |||||||||||||||||||||||||||||||
38 | |||||||||||||||||||||||||||||||
39 | |||||||||||||||||||||||||||||||
40 | |||||||||||||||||||||||||||||||
41 | |||||||||||||||||||||||||||||||
42 | |||||||||||||||||||||||||||||||
43 | |||||||||||||||||||||||||||||||
44 | |||||||||||||||||||||||||||||||
45 | |||||||||||||||||||||||||||||||
46 | |||||||||||||||||||||||||||||||
47 | |||||||||||||||||||||||||||||||
48 | |||||||||||||||||||||||||||||||
49 | |||||||||||||||||||||||||||||||
50 | |||||||||||||||||||||||||||||||
51 | |||||||||||||||||||||||||||||||
52 | |||||||||||||||||||||||||||||||
53 | |||||||||||||||||||||||||||||||
54 | |||||||||||||||||||||||||||||||
55 | |||||||||||||||||||||||||||||||
56 | |||||||||||||||||||||||||||||||
57 | |||||||||||||||||||||||||||||||
58 | |||||||||||||||||||||||||||||||
59 | |||||||||||||||||||||||||||||||
60 | |||||||||||||||||||||||||||||||
61 | |||||||||||||||||||||||||||||||
62 | |||||||||||||||||||||||||||||||
63 | |||||||||||||||||||||||||||||||
64 | |||||||||||||||||||||||||||||||
65 | |||||||||||||||||||||||||||||||
66 | |||||||||||||||||||||||||||||||
67 | |||||||||||||||||||||||||||||||
68 | |||||||||||||||||||||||||||||||
69 | |||||||||||||||||||||||||||||||
70 | |||||||||||||||||||||||||||||||
71 | |||||||||||||||||||||||||||||||
72 | |||||||||||||||||||||||||||||||
73 | |||||||||||||||||||||||||||||||
74 | |||||||||||||||||||||||||||||||
75 | |||||||||||||||||||||||||||||||
76 | |||||||||||||||||||||||||||||||
77 | |||||||||||||||||||||||||||||||
78 | |||||||||||||||||||||||||||||||
79 | |||||||||||||||||||||||||||||||
80 | |||||||||||||||||||||||||||||||
81 | |||||||||||||||||||||||||||||||
82 | |||||||||||||||||||||||||||||||
83 | |||||||||||||||||||||||||||||||
84 | |||||||||||||||||||||||||||||||
85 | |||||||||||||||||||||||||||||||
86 | |||||||||||||||||||||||||||||||
87 | |||||||||||||||||||||||||||||||
88 | |||||||||||||||||||||||||||||||
89 | |||||||||||||||||||||||||||||||
90 | |||||||||||||||||||||||||||||||
91 | |||||||||||||||||||||||||||||||
92 | |||||||||||||||||||||||||||||||
93 | |||||||||||||||||||||||||||||||
94 | |||||||||||||||||||||||||||||||
95 | |||||||||||||||||||||||||||||||
96 | |||||||||||||||||||||||||||||||
97 | |||||||||||||||||||||||||||||||
98 | |||||||||||||||||||||||||||||||
99 | |||||||||||||||||||||||||||||||
100 |