edubun 한국어

Heading structure and landmarks

A common way to read a page with a screen reader is to jump from heading to heading, so a page with no h2 elements reads like a book with no chapters.

Headings are a table of contents

Sighted readers skim. They glance at the big bold lines, find the section they want and start reading there. Screen reader users do the same thing with headings. MDN notes that a common technique is to jump quickly from heading to heading to work out what a page contains, and that most screen readers can list every heading on the page. That only works if the headings are real h1 to h6 elements. A paragraph made big and bold with CSS looks like a heading but is announced as ordinary text.

WCAG 2.2 covers this in success criterion 1.3.1 Info and Relationships, at level A: structure that is shown visually must also be available in the code. Criterion 2.4.6 Headings and Labels, at level AA, adds that headings must describe the topic of their section. A heading that says "More" or "Section 2" passes the first test and fails the second.

One h1 names the page. Each h2 starts a section, and each h3 sits inside the h2 above it.

Three rules from MDN

First, do not skip levels. Go from h1 to h2 to h3. Someone who hears an h4 straight after the h1 is left wondering where the missing levels went. Second, prefer a single h1 per page that names its content, much like the title element. The HTML standard allows more than one, but MDN describes one h1 as the usual best practice. Third, do not choose a heading level for its size. If an h3 looks too small, change the font size in CSS and keep the level that matches the structure.

Writing headings people can use

A heading list is only as good as its words. Put the useful word first, because people scanning a list of twenty headings hear the start of each and move on: "Opening hours" works better than "When you can visit us". Keep headings short and different from each other, so two sections are never both called "Details". Then test the outline. The accessibility panel in a browser's developer tools, or a screen reader's heading list, shows the headings alone. Read them in a row and ask whether they make sense as a table of contents. If they do, sighted skimmers benefit too.

Landmarks

Headings divide the content; landmarks divide the page into regions. The elements header, nav, main and footer each carry a built-in role, so a screen reader can offer a list of regions and jump straight to the main content or the navigation. A page normally has one main. You get these roles for free by choosing the right element, which is the first rule of ARIA in action: no extra attributes needed.

<header>
  <nav>
    <a href="/">Home</a> <a href="/menu">Menu</a>
  </nav>
</header>
<main>
  <h1>Corner Bakery</h1>
  <h2>Bread</h2>
  <h3>Sourdough</h3>
</main>
<footer>12 Mill Lane</footer>
Landmark elements around a heading outline with no skipped levels.
The h1 and the title element usually say nearly the same thing. The title names the browser tab and is the first thing a screen reader reads when the page opens; the h1 starts the content. If they disagree, people wonder whether they landed on the right page.
WCAG 1.3.1Info and Relationships (A): visual structure is in the code
WCAG 2.4.6Headings and Labels (AA): they describe the topic
Skipped levelh1 then h4: avoid it
mainLandmark for the main content, usually one per page
navLandmark for a block of navigation links
Heading too small?Change font-size in CSS, keep the level
Key points
  • Screen reader users move through a page by its headings.
  • Use real h1 to h6, one h1, and no skipped levels.
  • Headings describe their section (WCAG 2.4.6).
  • header, nav, main and footer give regions for free.
  1. A div with large bold text is read by a screen reader as
    • ordinary text
    • a level 1 heading
    • a link
    • nothing at all
  2. Which comes right after an h1 in a well-built outline?
    • h2
    • h3
    • h4
    • Any level
  3. An h3 looks too small for the design. What should you do?
    • Keep h3 and change font-size in CSS
    • Change it to h1
    • Change it to a bold p
    • Remove the heading
  4. Which criterion asks that headings describe their topic?
    • 2.4.6 Headings and Labels
    • 1.1.1 Non-text Content
    • 1.4.11 Non-text Contrast
    • 2.5.8 Target Size
  5. How many main elements does a page normally have?
    • One
    • None
    • One per section
    • One per heading
  6. Which element marks a block of navigation links?
  7. Is a heading "Section 2" a good heading?
    • No, it does not say what the section is about
    • Yes, numbers are clear
    • Yes, if it is an h2
    • Only on long pages
  8. Put these headings in outline order for a recipe page.
  9. What do landmark elements let screen reader users do?
    • Jump straight to regions such as the main content
    • Change the page colours
    • Read alt text faster
    • Skip all links
Sources for this course (7)
  • W3C, Web Content Accessibility Guidelines (WCAG) 2.2, W3C Recommendation first published 5 October 2023, current edition 12 December 2024 (w3.org/TR/WCAG22/, checked 2026-10-17, rechecked 2026-10-18)
  • W3C WAI, What's new in WCAG 2.2 (w3.org/WAI/standards-guidelines/wcag/new-in-22/, checked 2026-10-17)
  • W3C WAI, Images tutorial and alt decision tree (w3.org/WAI/tutorials/images/decision-tree/, checked 2026-10-17)
  • W3C, Using ARIA (w3.org/TR/using-aria/, Discontinued Draft 24 February 2026, rules 1 to 4, checked 2026-10-17)
  • W3C WAI-ARIA Authoring Practices Guide, Read Me First, "No ARIA is better than bad ARIA" (w3.org/WAI/ARIA/apg/practices/read-me-first/, checked 2026-10-17)
  • MDN Web Docs, tabindex (developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/tabindex, checked 2026-10-17)
  • MDN, Heading elements, accessibility notes (developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/Heading_Elements, checked 2026-10-17)

Checked: 2026-10-17