Definition: A skip link is a link at the very top of a page, usually reading "Skip to content", that goes straight to the main content. It saves keyboard users from tabbing through the logo, menu and search on every page. It is one of the recognised techniques for WCAG 2.4.1 Bypass Blocks at Level A [1][2].
German: Skip-Link · Also: skip navigation link · Last reviewed: 27 September 2026
Who needs it
A main menu with forty links means forty presses of Tab – on every page, before the content begins. That affects people with motor disabilities who use a keyboard, a switch or a mouth stick, for whom every key press costs effort and time. It also affects people using a screen magnifier, who would otherwise have to follow focus through the whole navigation.
Screen reader users have other routes, such as landmarks and headings. Browsers offer sighted keyboard users no such jumps, though. For them, the skip link is the fastest way to the content [3].
What a good skip link looks like
- It is the first focusable element on the page. The first press of Tab lands on it.
- Its target exists:
href="#content"needs an element withid="content", ideally<main>. - It becomes visible on focus at the latest. Many sites hide it until it receives focus, which is fine – invisible while focused it is useless, and it also fails 2.4.7 Focus Visible.
- Its text is clear and in the page's language.
In code
<!-- Missing: 40 menu links before the content -->
<header>…</header>
<nav>…</nav>
<main>…</main>
<a class="skip" href="#content">
Skip to content
</a>
<header>…</header>
<nav>…</nav>
<main id="content">…</main>
.skip { position: absolute; left: -999em; }
.skip:focus { left: 1rem; top: 1rem; }
Common mistakes
- The target is gone. After a redesign the main region has a new id, and the link leads nowhere.
- It stays invisible even when focused – because of
display: none, say, or a colour with no contrast. - It is not the first Tab stop, because a cookie notice, language switcher or social links come first.
- The page jumps, but focus doesn't. The page scrolls, yet the next Tab continues in the menu. Test this in every browser you support.
How Reviseberg handles it
Before the keyboard agent presses its first key, it checks whether the first focusable element is a link to a target on the same page, and whether that target exists. If not, it reports the rule keyboard:skip-link and notes in the step what it found instead. The axe-core rules skip-link (a skip link's target exists) and bypass (the page offers any way past repeated blocks) add to this. Whether the target really is the main content, and whether the link is comfortable to use, is in the end for a person to judge.
Related terms
Landmark · Keyboard accessibility · Focus order · Focus indicator · Keyboard trap