Skip to content

Keyboard & focus

The Page Has No Way to Skip Repeated Content

Keyboard and screen reader users must move through the whole header and menu on every page before they reach the main content.

bypassWCAG 2.0Introduced in WCAG 2.0.Level AA — the minimum. Missing it blocks people outright.

Status
SeriousSerious — Significant friction, or information that is lost.CurrentScanners run this rule today.
Owner
DesignDevTestProduct
Audit
Automated+ManualA scanner finds it; a person confirms the fix.
Save as PDF (opens in a new tab)

Why it matters

Most sites repeat the same logo, menu and search box on every page. A mouse user just clicks past them. A keyboard user has to press Tab through every link, every time.

A "Skip to main content" link, a main landmark or a clear heading lets people jump straight to the content. Without one, every page costs them dozens of extra key presses.

Who it affects

Who it affects, and how much
WhoWhat they experienceImpact
Screen reader usersThey hear the whole menu again on each page unless they can jump to a landmark or heading.High impact
Keyboard-only usersThey press Tab through every menu link on every page before reaching the content.High impact
Motor and dexteritySwitch and mouth-stick users pay for each extra step with real effort and time.High impact
Low-vision users (magnification)Magnifier users lose their place hunting for where the content starts.Partial impact
Cognitive and neurodivergent usersLong, repeated menus are tiring and make it harder to find the point of the page.Partial impact
Voice control usersThey can usually say a link's name directly, so they're only slightly slowed.Partial impact

Business & product impact

Business & product impact, with how much each claim weighs
AreaWhyImpact
LegalBypassing repeated blocks is a WCAG 2.2 Level A requirement, the minimum. Australia's Disability Discrimination Act complaints and EN 301 549 both point to it.High impact
ConversionPeople who must tab through 40 links on every page often give up before checkout.Moderate impact
SEOLandmarks add little or nothing to search ranking. Don't sell it as an SEO win.Low impact
Brand trustA missing skip link is one of the first things keyboard users notice.Moderate impact
Cost to fixCheap to fix once in the shared page template, and it applies everywhere.High impact

Fixing it in code

Add a skip link and a main landmark

Don't

<body>
  <nav>…40 links…</nav>
  <div class="content">
    <h1>Our services</h1>
  </div>
</body>

A screen reader says: “Home, link. About, link. Services, link… (and 37 more)”

Do

<body>
  <a class="skip-link" href="#main">Skip to main content</a>
  <nav>…40 links…</nav>
  <main id="main" tabindex="-1">
    <h1>Our services</h1>
  </main>
</body>

A screen reader says: “Skip to main content, link. Then: main, Our services, heading level 1”

The skip link jumps past the menu, and main lets screen reader users jump there too.

Show the skip link when it gets focus

Don't

.skip-link { display: none; }

A screen reader says: “Nothing — the link can never be reached.”

Do

.skip-link { position: absolute; left: -999px; }
.skip-link:focus { left: 1rem; top: 1rem; }

A screen reader says: “Skip to main content, link”

Hidden off-screen, it still gets focus and appears when someone tabs to it.

Designer's handoff note

Design how the skip link looks when it appears on the first Tab press. Make it clear and high contrast.

Mark the header, menu, main content and footer as regions in your designs so developers add the right landmarks.

Quick test

Tool

The keyboard alone

Checklist

Pass
A skip link appears first, and the next Tab lands inside the main content.
Fail
No skip link appears, or the next Tab goes back into the menu.

What a green scan still misses

A scanner passes the page if it finds a landmark, heading or skip link. It can't tell whether the skip link is visible on focus or actually moves focus to the content.

Reference

Rule ID
bypass
Raised by
  • axe-core: “Page must have means to bypass repeated blocks”
WCAG
Other standards
EN 301 549 9.2.4.1 · RGAA 12.7.1
Last reviewed
14 October 2026