Zum Inhalt springen
checkfrei
Menü

Skip-Link: "Zum Inhalt springen" richtig einbauen

Stand: 3. Oktober 2026 · CAZ Labs

Kurz gesagt

Ein Skip-Link ist ein zunächst unsichtbarer Link ganz oben auf der Seite, der beim ersten Druck auf die Tab-Taste erscheint und direkt zum Hauptinhalt führt. Er erspart Tastatur-Nutzern, sich auf jeder Unterseite durch das komplette Menü zu tabben. Einbauen dauert eine Viertelstunde: ein Link auf `#inhalt`, ein paar Zeilen CSS und die passende id am `<main>`.

Warum das wichtig ist

Wer mit der Maus surft, merkt davon nichts. Wer nur mit der Tastatur arbeitet, etwa wegen einer motorischen Einschränkung, einer Sehnenscheidenentzündung oder weil ein Screenreader läuft, springt mit Tab von Link zu Link. Ohne Skip-Link heißt das: Logo, zwanzig Menüpunkte, Suchfeld, Warenkorb, Sprachauswahl. Und zwar auf jeder Unterseite aufs Neue, bevor der erste Satz Inhalt kommt.

Die WCAG verlangen unter 2.4.1 Blöcke umgehen, dass sich wiederkehrende Bereiche überspringen lassen. Das geht auch über Landmarks und eine saubere Überschriftenstruktur. Diese Wege nutzen aber vor allem Screenreader-Nutzer. Wer ohne Screenreader nur die Tastatur nimmt, hat im Browser keine Taste für "zum Hauptinhalt". Für diese Gruppe ist der Skip-Link das Werkzeug, das im Alltag wirklich hilft.

Ehrlich gesagt: Hat deine Seite nur drei Menüpunkte, ist der Gewinn klein. Schaden tut der Link aber nie, denn er bleibt unsichtbar, bis jemand ihn braucht.

So prüfst du es selbst

Im kostenlosen Check von checkfrei siehst du sofort, ob am Seitenanfang ein Link auf einen Anker wie #main oder #inhalt steht. Fehlt er, gibt es eine Warnung. Ob der Link auch funktioniert, zeigt dir nur der Test mit der Tastatur:

  1. Ruf deine Seite auf und drück einmal die Tab-Taste, ohne vorher irgendwo hinzuklicken.
  2. Oben sollte jetzt ein Link wie "Zum Inhalt springen" auftauchen. Landet der Fokus stattdessen auf dem Logo oder dem ersten Menüpunkt, fehlt der Link oder er steht nicht an erster Stelle.
  3. Drück Enter. Die Seite springt zum Hauptinhalt.
  4. Drück noch einmal Tab. Der Fokus muss jetzt auf dem ersten Link im Inhalt landen und nicht wieder oben im Menü.

So behebst du es

Du brauchst den Link als erstes Element im <body>, ein Ziel mit passender id und ein paar Zeilen CSS, die den Link verstecken, bis er den Fokus bekommt.

HTML

Das tabindex="-1" am Ziel sorgt dafür, dass der Fokus zuverlässig mitspringt und Screenreader den neuen Bereich ansagen. Versteck den Link nie mit display: none oder visibility: hidden, dann erreicht ihn auch die Tastatur nicht mehr.

html
<!-- als erstes Element im body -->
<a class="skip-link" href="#inhalt">Zum Inhalt springen</a>
<header>...</header>
<main id="inhalt" tabindex="-1">
  ...
</main>

<!-- CSS, am besten in deiner Stylesheet-Datei -->
<style>
  .skip-link {
    position: absolute;
    left: 1rem;
    top: -10rem;
    z-index: 1000;
    padding: 0.75rem 1rem;
    background: #111;
    color: #fff;
  }
  .skip-link:focus {
    top: 1rem;
  }
</style>

WordPress

Block-Themes bekommen den Skip-Link von WordPress automatisch, er zeigt auf das <main>-Element der Vorlage. Fehlt <main>, fehlt auch der Link. Achtung: WordPress fügt diesen Link per JavaScript ein. Im ausgelieferten HTML steht er deshalb nicht, und Prüfwerkzeuge, die nur das HTML lesen, finden ihn unter Umständen nicht, checkfrei eingeschlossen. Besteht deine Seite den Tastaturtest von oben, ist trotzdem alles in Ordnung.

Themes mit dem Schlagwort "Accessibility Ready" im offiziellen Theme-Verzeichnis müssen einen Skip-Link mitbringen. Bei anderen klassischen Themes gehört er in die header.php deines Child-Themes, direkt hinter wp_body_open().

Shopify

Dawn und viele andere aktuelle Themes haben einen Skip-Link eingebaut. Fehlt er in deinem Theme, gehört er in layout/theme.liquid direkt hinter das öffnende <body>-Tag. Das Ziel ist der <main>-Bereich, der dort meist schon eine id hat.

Next.js

Setz den Link in app/layout.tsx als erstes Kind von <body>. Ein normales <a href="#inhalt"> reicht, für einen Sprung innerhalb der Seite brauchst du next/link nicht. In JSX schreibt sich das Attribut tabIndex.

jsx
export default function RootLayout({ children }) {
  return (
    <html lang="de">
      <body>
        <a className="skip-link" href="#inhalt">Zum Inhalt springen</a>
        <header>...</header>
        <main id="inhalt" tabIndex={-1}>{children}</main>
        <footer>...</footer>
      </body>
    </html>
  );
}

Typische Fehler

  • Das Ziel existiert nicht. Der Link zeigt auf #main, aber kein Element hat id="main". Oder die id kommt mehrfach vor, dann springt der Browser zur ersten Fundstelle, siehe doppelte IDs.
  • Ein fest stehender Header verdeckt nach dem Sprung den Anfang des Inhalts. Abhilfe schafft scroll-margin-top am Ziel, zum Beispiel scroll-margin-top: 6rem;.
  • Der Link ist da, aber nicht das erste fokussierbare Element. Steht davor noch eine Leiste mit Telefonnummer und fünf Social-Media-Symbolen, verliert er seinen Sinn.
  • Englischer Text auf einer deutschen Seite. "Skip to content" verstehen viele, "Zum Inhalt springen" alle.

So prüft checkfrei

Wir suchen am Seitenanfang einen Link auf einen Anker wie #main oder #inhalt. Fehlt er, gibt es eine Warnung.

Gewicht 1 von 3 im Bereich Barrierefreiheit.

Häufige Fragen

Muss ein Skip-Link sichtbar sein?

Er darf versteckt sein, muss aber sichtbar werden, sobald er den Tastaturfokus hat. Ein Link, der nur für Screenreader existiert und nie auftaucht, hilft sehenden Tastatur-Nutzern nicht. Wer mag, lässt ihn dauerhaft sichtbar.

Brauche ich einen Skip-Link, wenn meine Seite Landmarks hat?

Screenreader-Nutzern reichen Landmarks meist. Reine Tastatur-Nutzer ohne Screenreader können Landmarks im Browser aber nicht direkt ansteuern. Für sie ist der Skip-Link der einfachste Weg am Menü vorbei.

Wohin soll der Skip-Link springen?

An den Anfang des Hauptinhalts, also auf das <main>-Element oder direkt auf die H1. Wichtig ist, dass an dieser Stelle wirklich der Inhalt beginnt und kein weiterer Teil der Navigation folgt.

Jetzt deine Seite prüfen

checkfrei prüft Sprunglink zum Inhalt und 68 weitere Punkte in einem Durchgang. Kostenlos und ohne Anmeldung.