Comprehensive List of Screen Reader Navigation Verbs with Standards and Platform Behaviors
To optimize your website for blind users, it's essential to understand both the standard recommendations for implementing accessible content and how different screen readers react to these standards. Below is a detailed list of navigation actions (verbs), including:
- Standard Recommendation: The recommended way to implement the feature according to accessibility standards (e.g., WCAG, WAI-ARIA).
- Platform Reactions: How each major screen reader (JAWS, NVDA, VoiceOver, Narrator, TalkBack) interacts with the standard implementation, including any departures from the expected behavior.
Table of Contents
- Move to Next Heading
- Move to Previous Heading
- Move to Next Link
- Move to Previous Link
- Move to Next Button
- Move to Previous Button
- Activate the Current Element
- Read Current Line
- Read Current Word
- Read Current Character
- Toggle Forms/Focus Mode
- List All Headings
- List All Links
- List All Buttons
- Move to Next Form Field
- Move to Previous Form Field
- Start Reading from Current Position
- Read the Entire Page
- Open Context Menu
- Search for Text on Page
- Move to Next Landmark/Region
- Navigate by Lists and List Items
- Navigate by Tables and Table Cells
- Navigate by Frames and iframes
- Navigate by Form Element Types
- Navigate by ARIA Roles and Custom Widgets
- Announce Notifications and Live Regions
- Spell Current Word
- Adjust Speech Settings
- Switch Review Modes
- Select Text
- Announce Formatting
- Adjust Navigation Granularity
- Navigate to Specific Elements
- Additional Notes
- Best Practices for Developers
- Conclusion
Legend
- Standard Recommendation: Guidelines from WCAG, WAI-ARIA, and HTML specifications.
- Platforms:
- JAWS: Job Access With Speech (Windows)
- NVDA: NonVisual Desktop Access (Windows)
- VoiceOver: Built-in screen reader on macOS and iOS
- Narrator: Built-in screen reader on Windows
- TalkBack: Built-in screen reader on Android devices
1. Move to Next Heading
Standard Recommendation:
- Use Semantic HTML Headings: Use
<h1>
to<h6>
tags to denote headings. - Logical Structure: Headings should reflect the content hierarchy, with
<h1>
for main titles and subsequent levels for subheadings.
Platform Reactions:
- JAWS: Press
H
to navigate to the next heading.- Departure: None; correctly navigates when headings are properly tagged.
- NVDA: Press
H
.- Departure: None; consistent with standards.
- VoiceOver: Use
Control
+Option
+Command
+H
.- Departure: None; follows standard behavior.
- Narrator: Press
H
.- Departure: None.
- TalkBack: Swipe forward after setting granularity to "Headings".
- Departure: May not recognize headings if not properly tagged with
<h1>
-<h6>
.
- Departure: May not recognize headings if not properly tagged with
2. Move to Previous Heading
Standard Recommendation:
- Same as above; ensure correct use of heading tags.
Platform Reactions:
- JAWS/NVDA: Press
Shift
+H
.- Departure: None.
- VoiceOver: Use
Shift
+Control
+Option
+Command
+H
.- Departure: None.
- Narrator: Press
Shift
+H
.- Departure: None.
- TalkBack: Swipe backward after setting granularity to "Headings".
- Departure: Same as above.
3. Move to Next Link
Standard Recommendation:
- Proper Link Markup: Use
<a href="...">
for all links. - Descriptive Text: Provide meaningful link text that describes the destination.
Platform Reactions:
- JAWS: Press
Tab
orK
.- Departure: May skip links without
href
attributes or withhref="#"
without proper handling.
- Departure: May skip links without
- NVDA: Press
K
.- Departure: Similar to JAWS.
- VoiceOver: Press
Tab
or use the rotor to navigate links.- Departure: None.
- Narrator: Press
K
orTab
.- Departure: None.
- TalkBack: Swipe forward; may need to adjust granularity to "Links".
- Departure: May not recognize links without proper markup.
4. Move to Previous Link
Standard Recommendation:
- Same as above.
Platform Reactions:
- JAWS/NVDA: Press
Shift
+K
.- Departure: Same as moving forward; issues arise with improper link markup.
- VoiceOver: Use
Shift
+Tab
or rotor.- Departure: None.
- Narrator: Press
Shift
+K
orShift
+Tab
.- Departure: None.
- TalkBack: Swipe backward; adjust granularity if needed.
- Departure: Same as above.
5. Move to Next Button
Standard Recommendation:
- Use Native Button Elements: Use
<button>
,<input type="button">
, or<input type="submit">
. - Accessible Roles for Custom Buttons: If using custom elements (e.g.,
<div>
or<span>
), addrole="button"
and ensure keyboard accessibility withtabindex="0"
.
Platform Reactions:
- JAWS/NVDA: Press
B
to navigate to the next button.- Departure: May not recognize buttons without proper roles or
tabindex
.
- Departure: May not recognize buttons without proper roles or
- VoiceOver: Use rotor to select "Buttons".
- Departure: May require interaction commands to access custom buttons.
- Narrator: Press
B
.- Departure: Similar to JAWS/NVDA.
- TalkBack: Swipe forward after setting granularity to "Controls".
- Departure: Custom buttons without proper roles may be skipped.
6. Move to Previous Button
Standard Recommendation:
- Same as above; ensure all buttons are accessible.
Platform Reactions:
- JAWS/NVDA: Press
Shift
+B
.- Departure: Same as moving forward.
- VoiceOver: Use rotor and swipe up.
- Departure: None if buttons are properly implemented.
- Narrator: Press
Shift
+B
.- Departure: Same as above.
- TalkBack: Swipe backward; adjust granularity if needed.
- Departure: Same as above.
7. Activate the Current Element
Standard Recommendation:
- Ensure Keyboard Operability: Interactive elements must be operable via keyboard (e.g.,
Enter
orSpacebar
). - Use
onclick
with Keyboard Events: For custom controls, ensure thatonclick
handlers are triggered by both mouse and keyboard events.
Platform Reactions:
- JAWS/NVDA: Activate with
Enter
orSpacebar
.- Departure: Custom elements without keyboard event handlers may not activate.
- VoiceOver: Use
Control
+Option
+Spacebar
.- Departure: May require interaction mode for custom elements.
- Narrator: Activate with
Enter
orSpacebar
.- Departure: Similar to JAWS/NVDA.
- TalkBack: Double-tap the screen.
- Departure: None if elements are properly accessible.
8. Read Current Line
Standard Recommendation:
- Proper Text Structure: Ensure text content is structured in logical blocks.
Platform Reactions:
- All Platforms: Read the current line using respective commands.
- Departure: Lines may be misread if content uses excessive line breaks or non-standard formatting.
9. Read Current Word
Standard Recommendation:
- Avoid Text Splitting: Do not split words across multiple elements or spans.
Platform Reactions:
- All Platforms: Read the current word.
- Departure: Inconsistent reading if words are split or contain hidden characters.
10. Read Current Character
Standard Recommendation:
- Proper Encoding: Ensure characters are properly encoded (e.g., use Unicode characters where appropriate).
Platform Reactions:
- All Platforms: Read the current character.
- Departure: May mispronounce or skip characters with improper encoding.
11. Toggle Forms/Focus Mode
Standard Recommendation:
- Use Standard Form Elements:
<input>
,<textarea>
,<select>
, etc. - Proper Labels: Associate labels with form controls using
<label>
.
Platform Reactions:
- JAWS/NVDA: Enter Forms Mode automatically on form fields.
- Departure: May not enter Forms Mode on custom controls without proper ARIA roles.
- VoiceOver: Interacts with form elements as needed.
- Departure: None if elements are standard.
- Narrator: Handles forms automatically.
- Departure: Similar behavior.
- TalkBack: Focuses on form fields when selected.
- Departure: May skip improperly labeled fields.
12. List All Headings
Standard Recommendation:
- Consistent Heading Structure: Use headings to outline page structure.
Platform Reactions:
- JAWS: Press
Insert
+F6
.- Departure: Will not list headings not marked with
<h1>
-<h6>
.
- Departure: Will not list headings not marked with
- NVDA: Press
NVDA
+F7
and select "Headings".- Departure: Same as JAWS.
- VoiceOver: Use rotor to list headings.
- Departure: None if headings are properly tagged.
- Narrator: Press
Caps Lock
+F6
.- Departure: Same as above.
- TalkBack: Navigate headings using granularity.
- Departure: May not list headings but can navigate to them.
13. List All Links
Standard Recommendation:
- Meaningful Links: Ensure link text is descriptive.
Platform Reactions:
- JAWS: Press
Insert
+F7
.- Departure: Links without
href
attributes may not appear.
- Departure: Links without
- NVDA: Same as JAWS.
- Departure: Similar limitations.
- VoiceOver: Use rotor to list links.
- Departure: None.
- Narrator: Press
Caps Lock
+F7
.- Departure: Same as above.
- TalkBack: Limited to navigation rather than listing.
14. List All Buttons
Standard Recommendation:
- Accessible Buttons: Ensure all buttons are properly marked up.
Platform Reactions:
- JAWS: Press
Insert
+F5
.- Departure: Custom buttons without roles may be missed.
- NVDA: Use elements list and select "Buttons".
- Departure: Same as JAWS.
- VoiceOver: Use rotor to list buttons.
- Departure: None if buttons are correctly implemented.
- Narrator: Press
Caps Lock
+F5
.- Departure: Similar behavior.
- TalkBack: Navigation-focused; may not list buttons separately.
15. Move to Next Form Field
Standard Recommendation:
- Labeling: Ensure all form fields have associated labels.
Platform Reactions:
- JAWS/NVDA: Press
F
.- Departure: May skip fields without labels.
- VoiceOver: Press
Tab
.- Departure: None if fields are standard.
- Narrator: Press
F
.- Departure: Similar to JAWS/NVDA.
- TalkBack: Swipe forward; adjust granularity if needed.
- Departure: May not recognize unlabeled fields.
16. Move to Previous Form Field
Standard Recommendation:
- Same as above.
Platform Reactions:
- Consistent across platforms when form fields are properly labeled.
17. Start Reading from Current Position
Standard Recommendation:
- Logical Content Flow: Ensure content flows logically and is not interrupted by hidden elements.
Platform Reactions:
- All Platforms: Read from the current position.
- Departure: Dynamically inserted content without proper focus management may be skipped.
18. Read the Entire Page
Standard Recommendation:
- Avoid Auto-Play Media: Do not disrupt reading with auto-playing content.
- Content Accessibility: Ensure all content is accessible and not hidden.
Platform Reactions:
- All Platforms: Read entire page from top.
- Departure: Hidden content or dynamically loaded sections may not be included.
19. Open Context Menu
Standard Recommendation:
- Accessible Context Menus: Use standard context menu events or accessible custom implementations.
Platform Reactions:
- All Platforms: Open context menu with standard commands.
- Departure: Custom context menus not accessible via keyboard may not be usable.
20. Search for Text on Page
Standard Recommendation:
- Text Content: Ensure text is real text, not images.
- Accessibility of Text: Avoid using text embedded in non-text elements.
Platform Reactions:
- All Platforms: Use
Ctrl
+F
or equivalent.- Departure: Cannot find text in images or inaccessible elements.
21. Move to Next Landmark/Region
Standard Recommendation:
- Use ARIA Landmarks: Implement
role
attributes likenavigation
,main
,banner
, etc. - HTML5 Structural Elements: Use
<nav>
,<main>
,<header>
,<footer>
, etc.
Platform Reactions:
- JAWS: Press
R
.- Departure: Will not recognize landmarks without proper roles.
- NVDA: Press
D
.- Departure: Same as JAWS.
- VoiceOver: Use rotor to navigate landmarks.
- Departure: None if landmarks are properly implemented.
- Narrator: Press
D
.- Departure: Similar behavior.
- TalkBack: Swipe forward after setting granularity to "Landmarks".
- Departure: May not recognize improperly tagged regions.
22. Navigate by Lists and List Items
Standard Recommendation:
- Proper List Markup: Use
<ul>
or<ol>
for lists and<li>
for list items.
Platform Reactions:
- JAWS/NVDA: Press
L
for lists,I
for list items.- Departure: Non-standard lists may not be recognized.
- VoiceOver: Use rotor to select "Lists".
- Departure: None with correct markup.
- Narrator: Press
L
.- Departure: Similar to JAWS/NVDA.
- TalkBack: Adjust granularity to "Lists".
- Departure: May skip lists without proper tags.
23. Navigate by Tables and Table Cells
Standard Recommendation:
- Data Tables: Use
<table>
with<thead>
,<tbody>
,<tr>
,<th>
, and<td>
. - Accessibility Attributes: Use
scope
,headers
, andaria-labelledby
for complex tables.
Platform Reactions:
- JAWS/NVDA: Press
T
for tables; navigate cells with arrow keys.- Departure: May misinterpret layout tables without
role="presentation"
.
- Departure: May misinterpret layout tables without
- VoiceOver: Interact with tables using
Control
+Option
+Shift
+Down Arrow
.- Departure: None if tables are properly structured.
- Narrator: Press
T
.- Departure: Similar behavior.
- TalkBack: Limited support for table navigation.
- Departure: May not navigate tables effectively.
24. Navigate by Frames and iframes
Standard Recommendation:
- iframes: Use
<iframe>
with meaningfultitle
attributes. - Avoid Framesets: Framesets are obsolete; use modern web technologies.
Platform Reactions:
- JAWS/NVDA: Press
M
to navigate frames.- Departure: May not recognize iframes without titles.
- VoiceOver: Navigation depends on content within iframes.
- Departure: None if properly implemented.
- Narrator: Press
M
.- Departure: Similar to JAWS/NVDA.
- TalkBack: Limited iframe support.
- Departure: May not recognize or navigate into iframes.
25. Navigate by Form Element Types
Standard Recommendation:
- Use Correct Form Controls:
<input type="checkbox">
,<input type="radio">
, etc. - Labels and Fieldsets: Use
<label>
and<fieldset>
for grouping.
Platform Reactions:
- JAWS/NVDA: Use specific keys (
X
for checkboxes,A
for radio buttons).- Departure: Custom controls without roles may not be recognized.
- VoiceOver: Navigate forms using standard keys.
- Departure: May require interaction mode for custom elements.
- Narrator: Similar behavior.
- TalkBack: Adjust granularity to "Controls".
- Departure: Same as above.
26. Navigate by ARIA Roles and Custom Widgets
Standard Recommendation:
- Implement ARIA Correctly: Use appropriate roles, states, and properties.
- Follow ARIA Authoring Practices: Ensure custom widgets behave like native elements.
Platform Reactions:
- JAWS/NVDA: Recognize and interact with ARIA roles when properly implemented.
- Departure: Misused or incorrect ARIA roles can cause confusion.
- VoiceOver: Generally supports ARIA, but may have issues with complex widgets.
- Narrator: Support improving but may lag behind.
- TalkBack: Varies; accurate implementation is crucial.
27. Announce Notifications and Live Regions
Standard Recommendation:
- Use Live Regions: Implement
aria-live
attributes for dynamic content updates. - Roles for Alerts: Use
role="alert"
for important messages.
Platform Reactions:
- All Platforms: Announce updates in live regions.
- Departure: Overuse or improper use can overwhelm users or cause announcements to be missed.
28. Spell Current Word
Standard Recommendation:
- Avoid Text Fragmentation: Ensure words are not split across elements.
Platform Reactions:
- All Platforms: Spell current word with respective commands.
- Departure: May not spell correctly if words are fragmented.
29. Adjust Speech Settings
Standard Recommendation:
- Respect User Settings: Do not override user preferences for speech rate, pitch, etc.
Platform Reactions:
- All Platforms: Users adjust settings manually.
- Departure: Content that tries to control these settings may cause issues.
30. Switch Review Modes
Standard Recommendation:
- Provide Proper Roles and States: Ensure interactive elements are accessible in both browse and focus modes.
Platform Reactions:
- JAWS/NVDA: Users toggle modes as needed.
- Departure: Custom widgets may require specific modes; improper implementation can hinder access.
- VoiceOver/Narrator: Handle mode switching automatically.
- Departure: May require extra interaction steps for custom elements.
- TalkBack: Manages modes through gestures.
31. Select Text
Standard Recommendation:
- Allow Text Selection: Do not disable text selection unless necessary.
Platform Reactions:
- All Platforms: Support text selection with appropriate commands.
- Departure: Disabled text selection hinders this functionality.
32. Announce Formatting
Standard Recommendation:
- Use Semantic Markup:
<strong>
,<em>
,<code>
, etc., for textual emphasis. - Avoid Using Only Visual Cues: Ensure formatting is programmatically determinable.
Platform Reactions:
- All Platforms: Announce formatting when semantics are used.
- Departure: Styling with CSS alone may not be announced.
33. Adjust Navigation Granularity
Standard Recommendation:
- Structure Content Logically: Enable navigation at various levels (character, word, line, etc.).
Platform Reactions:
- All Platforms: Users adjust granularity as needed.
- Departure: Poor content structure can limit navigation options.
34. Navigate to Specific Elements
Standard Recommendation:
- Use Appropriate Elements: For example, use
<p>
for paragraphs,<blockquote>
for block quotes.
Platform Reactions:
- All Platforms: Navigate to elements when properly tagged.
- Departure: Non-semantic elements may not be recognized.
35. Additional Notes
- Consistent Navigation: Users expect consistent behavior across websites.
- Avoid ARIA Overuse: Use ARIA to enhance, not replace, native semantics.
- Testing: Regular testing with different screen readers is essential.
36. Best Practices for Developers
- Semantic HTML: Always prefer semantic elements over
div
orspan
with roles. - Accessible Labels: Use
aria-label
oraria-labelledby
when necessary. - Keyboard Accessibility: Ensure all functionality is available via keyboard.
- Error Handling: Provide clear, accessible error messages.
- Focus Management: Manage focus, especially with dynamic content changes.
- Avoid Hidden Text for Accessibility: Use visually hidden techniques (
.sr-only
) when necessary.
37. Conclusion
Understanding the standard recommendations and how different platforms react to them is crucial for creating accessible web content for blind users. By adhering to accessibility standards and best practices, you ensure that your website is navigable and usable across various screen readers, providing an inclusive experience for all users.
References
- Web Content Accessibility Guidelines (WCAG) 2.1
- WAI-ARIA Authoring Practices 1.1
- HTML Living Standard
- Accessible Rich Internet Applications (WAI-ARIA) 1.1
- ARIA Live Regions
- Screen Reader Keyboard Shortcuts
Feel free to contact me if you need further clarification on any specific navigation action, standard recommendation, or platform behavior.