Start every content section with a real heading
Start each section of a page with a real heading element, because heading navigation is how a screen-reader user gets around and it only works on genuine h1 to h6. W3C lists H69 as sufficient for 2.4.1 Bypass Blocks, where headings are what let somebody skip past a repeated block, and it names five jobs heading markup does. Marking the start of the main content, naming sections, marking off navigation blocks, labelling an image of text acting as a heading, and letting people move by section. Functional blocks count too, so a search form's own heading is a heading. On level order, be careful what you claim. W3C encourages nesting without skips and does not test for it, so a jumped level is a design smell rather than a failure.
How we find it in an audit
Scanners report pages with no headings and pages with skipped levels, which is the inventory. They cannot see the heading that is not one, and that is the common defect. A 24 pixel bold div looks exactly like an h2 and reads as plain text. So we put the visual outline of each template next to the marked-up structure and list every place the two disagree.
How affected users experience it
The H key jumps to the next heading and is one of the most-used keys in a screen reader. On a page with real headings, Refund policy is three presses away. On a page of styled divs, H does nothing at all, so the only route to the fifth section is to listen through the first four. That is not a slower page. That is a different page.
Passes vs. fails
Passes
<h2>Refund policy</h2>Fails
<div class="section-title">Refund policy</div>How this gets tested
The W3C publishes test rules that define what a checker looks for here.
- Bypass Blocks of Repeated ContentA tool finds candidates, you decide
- Document has heading for non-repeated contentNothing implements this yet
- Document has a landmark with non-repeated contentA tool can check this
- Block of repeated content is collapsibleNothing implements this yet
- Document has an instrument to move focus to non-repeated contentNothing implements this yet
Other ways to satisfy this rule
10 guides on this site are filed under 2.4.1 Bypass Blocks. W3C lists this one as sufficient for that rule when used for grouping blocks of repeated material in a way that can be skipped, so the condition is part of the test rather than a footnote to it.
- ARIA11sufficientAdd landmarks so users can skip around
- G1sufficientAdd a skip link as the first element on the page
- G123sufficientAdd skip links past repeated content blocks
- G124sufficientAdd top-of-page links to each content area
- H64sufficientGive every iframe a descriptive title
- PDF9sufficientTag PDF headings with real heading tags
This guide is our interpretation of W3C technique H69: Providing heading elements at the beginning of each section of content. W3C publishes its techniques as guidance rather than as the standard, and says so on every one of them. The success criterion is what conformance is measured against, and a technique is one documented way to meet it.