A skip link is the simplest and most universally supported accessible pattern
on the web. Implemented correctly it takes fewer than ten lines of HTML and
CSS, requires no JavaScript, and dramatically improves the experience for
keyboard and screen reader users on every page of a site.
[1]
HTML — place as the very first element inside body:
CSS:
The tabindex="-1" on main is essential — without it, activating the skip
link scrolls the page but does not move keyboard focus, so the next Tab
press lands back in the navigation.
[2]
The skip link must become visible when it receives focus. Sighted keyboard
users need to see it. Design it to be clearly readable — high contrast,
legible font size, positioned at the top of the viewport on focus.
A common pattern is to position it absolutely at the top-left of the screen
on focus, above the navigation bar, so it appears as a visible banner.
On pages with distinct navigable regions, multiple skip links may be
appropriate. Place them in a group at the top of the page:
Each skip link must point to an element with a matching id and tabindex="-1".
[3]
After implementing, test as follows:
If step 3 fails, check that the target element has tabindex="-1" and that
the id matches the href exactly.
Last edited Apr 5, 2026, 7:36 PM · P**** J****