You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/contributors/check-accessibility.md
+10-8Lines changed: 10 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -109,6 +109,8 @@ For a more thorough test, you need these shortcuts:
109
109
- Focus moves from one element to the next in a logical order
110
110
* In most of our apps, that usually means sidebar (if open), then body; and top to bottom, left to right (or right to left for RTL languages such as Arabic or Hebrew).
111
111
- Focus moves to dialogs when opened, and returns to the trigger when closed
112
+
- When a dialog opens, focus moves to the dialog
113
+
- When a dialog closes, focus moves back to the element that triggered the dialog
112
114
- Dialogs close by hitting the {kbd}`Escape` key
113
115
- If an element doesn't have a visible label but does have a tooltip on hover, the tooltip should also be visible on focus
114
116
@@ -151,17 +153,16 @@ You can find further guidance in the [screen reader documentation](https://docum
151
153
152
154
- All interactive elements (buttons, fields, links…) have a label and a role that is read out loud by the screen reader
153
155
* Roles explain the function of the component ("button", "search box", "link"). Check [GTK roles](https://docs.gtk.org/gtk4/enum.AccessibleRole.html).
156
+
- All labels are descriptive, meaningful and concise
154
157
- All labels are unique, unless they trigger the exact same action.
155
-
* For example, if there's a single share button, it can be labeled "Share". But if there's more than one "Show" button, you should specify what it refers to: for example, "Show description", "Show gallery".
156
-
- All labels are short, descriptive and meaningful
157
-
* Take context into account: if you are on an app page, the share button should be labeled "Share", not "Share this app" or "Share [app name]": it's generally redundant with the page title/headings.
158
+
* For example, if there's more than one share button, each label should mention what it refers to ("Share [item name 1]", "Share [item name 2]")
158
159
- All pages have a meaningful title or main heading
159
160
- All section headings are unique and meaningful
160
-
- When changing to a new page, either page title or the main heading is announced (whichever is more meaningful)
161
-
- Errors are either announced or readable with the screen reader
161
+
- When changing to a new page, either the page title or the main heading is announced (whichever is more meaningful)
162
+
- Errors are announced and readable with the screen reader
162
163
- For images that are not strictly decorative, provide alternative text that can be read out loud by the screen reader
163
164
* Get guidance on how to write good alternative text in the [Vanilla content guidelines](https://vanillaframework.io/docs/content-guidelines#alt-text-for-images)
164
-
-For audio or video content, provide text alternatives (for instance, transcriptions or captions)
165
+
-All visual content in videos is [described](https://www.w3.org/WAI/media/av/description/) by a narrator, in the transcript, or in adjacent text.
165
166
166
167
167
168
## Check additional accessibility
@@ -176,8 +177,9 @@ Besides the more common checks above, you should also keep in mind these:
176
177
- All interactive elements have a width and height of at least 24px, or have [sufficient space around them](https://www.w3.org/WAI/WCAG22/Understanding/target-size-minimum.html).
177
178
- Large interactive elements have at least 24px of either vertical or horizontal spacing
178
179
* If interactive elements are too close, users might activate them by accident, for example when [scrolling on touch screens](https://axesslab.com/hand-tremors/).
179
-
- Audio that lasts more than 3 seconds does not play automatically
180
-
- Audio that lasts more than 3 seconds can be paused or muted
180
+
- Audio or video that lasts more than 3 seconds does not play automatically
181
+
- Audio or video that lasts more than 3 seconds can be paused or muted
182
+
- Provide text alternatives (for instance, transcriptions or captions) for audio and video content
0 commit comments