Skip to content
Silktide tests that each page gives visitors a way to jump straight to its main content, past repeated headers and navigation. This is usually a "skip to content" link at the top of the page, or a main content landmark.
<!-- A skip link pointing at the main content -->
<a href="#main">Skip to main content</a>
...
<main id="main">
<h1>Welcome</h1>
</main>
Why this matters
Many people experience pages sequentially: a user hears content in order, and a keyboard user tabs through every link. Since most sites repeat the same header and navigation on every page, these users must wade through it again on every single page - a blind visitor may sit through dozens or hundreds of navigation links before reaching the content. A skip link or main landmark removes that toll.
Skip links do not have to be visible to everyone. A common pattern keeps the link hidden until it receives , so it does not affect your design.
How to fix it
- Add a link at the very top of the page pointing to the start of your main
content, such as
<a href="#main">Skip to main content</a>. - Make sure the target exists: the fragment must match a real element's
id, and the target element must be visible. - Alternatively (or additionally), mark your main content with a
<main>element orrole="main"- either satisfies this check on its own. - Best practice is to combine the two, a skip link pointing at the
<main>landmark, which works with the widest range of browsers and assistive technology:
<a href="#main">Skip to main content</a>
...
<main id="main">...</main>
How Silktide tests this
- Skip pages with fewer than 500 visible characters of text - there is too little content to need skipping to.
- Look for a link pointing to a fragment (like
#main) on the same page. To count, the link must not sit adjacent to other text (which would suggest it is part of a sentence rather than a navigation aid), and it must be either visible or hidden in the screen-reader-friendly way. - The link's text is deliberately not examined, so the check works in every language.
- Report a problem when:
- The link's fragment points to an
idthat does not exist on the page (a broken skip link). - The link appears after more than 500 visible characters of text, too late to save the user any effort.
- No skip link exists and the page has no
<main>orrole="main"landmark.
- The link's fragment points to an
Troubleshooting
I have a skip link but the check still fails
Check the three failure cases above: the most common causes are a fragment
pointing to an id that no longer exists, a target element that is invisible,
and a cookie banner or other content pushing the link more than 500 characters
into the page.
My content starts at the top of the page
If the page has fewer than 500 visible characters, it is skipped automatically. Longer pages still need a skip link or main landmark, even when the content starts early, because Silktide cannot reliably tell that no navigation precedes it.