Headings form the most important part in the structure of the page. They allow the users to skim through the page and directly read the information they need. Headings also help user’s those depend on screen readers to skip the repeated navigational elements and directly jump to the main content region of the page.
Screen reader commands for headings
Key Stroke | Action |
H | Navigates to next heading |
Shift + H | Navigates to previous heading |
Numbers 1 to 6 | Navigates to the next level of heading with that number |
Shift + number 1 to 6. | Navigates to previous heading with the level. |
NVDA + F7 | Pulls the elements list dialog, choose headings from it. |
Validation for headings
Check 1 : Missing Markup
- Open the page on the browser.
- Navigate from top to bottom using a screen reader.
- Identify if any content on the page that looks and function like a heading but not announced as a heading
- If the page contains headings that are not spoken out by NVDA it is an accessibility
Check 2: Incorrect markup
- Repeat step 1 and step 2 from check 1 i.e. open the page in the browser and navigate top to bottom using NVDA.
- Check if any content is read as heading but is a normal text.
- Content that is contextually not a heding should not be read as a heading by NVDA.
- If step 2 is passed this success criteria is passed, els failed.
Check 3: Heading Hierarchy
- Open the page on a browser.
- Either using NVDA or Paul Adam’s headings bookmarklet navigate through all the headings on the page.
- Check if the headings are in hierarchical order.
- If the order of heading levels are not hierarchical consider it as an accessibility violation.If headings form a hierarchical order this success criteria is passed.
- Also verify if more than one level of heading is skipped in the hierarchy. Eg: After heading level consider using level 2 or level 3 heading (level 2 recommended). Having level 4 heading after level 1 can be considered a violation.
Note: Riverse hierarchy is an accessibility violation.
Note 2: Header, main content and footer elements can have a individual structure of headings. It is not necessary to consider page as a single entity while evaluating heading structure.