Kein Hauptbereich (landmark-one-main)

Die Regel landmark-one-main meldet eine Seite ohne Hauptbereich – ohne <main>-Element und ohne role="main". Screenreader-Nutzende können dann nicht direkt zum Inhalt springen. Die Lösung ist ein <main> um den Hauptinhalt, einmal im Seiten-Template gesetzt.

Was die Regel bedeutet

Das Landmark „main“ kennzeichnet den Teil der Seite, der nur auf dieser Seite steht: den Artikel, das Produkt, die Suchergebnisse – nicht Kopf, Navigation und Fußbereich, die sich auf jeder Seite wiederholen. HTML liefert es mit dem Element <main>; role="main" an einem anderen Element leistet dasselbe.

Die Regel prüft das ganze Dokument einmal und ist erfüllt, sobald sie einen Hauptbereich findet. Sie prüft nicht, ob darin wirklich der Hauptinhalt steht, und sie beanstandet auch keine doppelten Hauptbereiche – das übernimmt die eigene axe-Regel landmark-no-duplicate-main. Der HTML-Standard erlaubt nur ein sichtbares <main> pro Seite.

Wichtig: Das ist eine Best Practice, kein eigener WCAG-Verstoß. Sachlich gehört sie zu 1.3.1 Info und Beziehungen, weil die Struktur der Seite maschinenlesbar wird, und zu 2.4.1 Blöcke umgehen, weil ein Hauptbereich eine Möglichkeit ist, Wiederholtes zu überspringen.

Wen es betrifft

Vor allem blinde Menschen, die mit einem Screenreader arbeiten. Sie springen direkt in den Hauptbereich – in NVDA mit D, in VoiceOver über den Rotor oder aus einer Liste der Landmarks –, statt auf jeder Seite die ganze Navigation anzuhören. Fehlt der Hauptbereich, fehlt diese Abkürzung. Tastaturnutzende profitieren indirekt: Ein Skip-Link braucht ein Ziel, und <main id="inhalt"> ist das naheliegende.

Warum die Prüfung anschlägt

  • Ältere Themes, die den Inhalt in <div id="content"> oder <div class="container"> packen.
  • Single-Page-Apps, die in <div id="app"> rendern und nie ein Landmark setzen.
  • Seitenbaukästen, deren Vorlagen Abschnitte als einfache <div>s ausgeben.
  • Landingpages und Sondervorlagen (Checkout, Kampagne, Fehlerseite), die außerhalb des Haupt-Themes gebaut wurden.
  • <main> in einer Komponente, die nur manche Seitentypen laden.

So beheben Sie es

Setzen Sie <main> ins Seiten-Template, um den Inhalt zwischen Kopf- und Fußbereich. Eine Änderung behebt jede Seite, die dieses Template nutzt.

<!-- Vorher: Kopf und Fuß sind Landmarks, der Inhalt ist ein div -->
<body>
  <header class="site-header"><a href="/">Beispiel GmbH</a></header>
  <div id="inhalt" class="page-content">
    <h1>Versand und Rückgabe</h1>
  </div>
  <footer class="site-footer"><p>© 2026 Beispiel GmbH</p></footer>
</body>
<!-- Nachher: ein main-Element; die id dient zugleich als Ziel des Skip-Links -->
<body>
  <a class="skip-link" href="#inhalt">Zum Inhalt springen</a>
  <header class="site-header"><a href="/">Beispiel GmbH</a></header>
  <main id="inhalt" class="page-content">
    <h1>Versand und Rückgabe</h1>
  </main>
  <footer class="site-footer"><p>© 2026 Beispiel GmbH</p></footer>
</body>

Dazu drei Faustregeln:

  • Genau ein sichtbares <main> pro Seite, nicht verschachtelt in <header>, <nav>, <aside> oder <footer>.
  • Element tauschen, Klassen behalten: Der Wechsel von <div> zu <main> ändert das Layout selten, denn <main> ist wie <div> ein Blockelement.
  • In einer Single-Page-App gehört <main> in die Layout-Komponente, die alle Routen teilen.

So prüfen Sie es von Hand

  1. Lassen Sie sich die Landmarks anzeigen: in NVDA mit Einfügen + F7 und „Orientierungspunkte“, in VoiceOver über den Rotor mit VO + U. Eine Browser-Erweiterung zur Landmark-Anzeige funktioniert auch.
  2. Prüfen Sie, ob es genau einen Hauptbereich gibt, und springen Sie hinein. Beginnt er dort, wo der eigentliche Inhalt der Seite beginnt?
  3. Sehen Sie in den Entwicklertools des Browsers in den Barrierefreiheitsbaum: Das Element sollte die Rolle „main“ haben.
  4. Die Regel prüft nur, ob ein Hauptbereich existiert. Ein <main>, das auch die Navigation enthält oder den ganzen <body> umschließt, besteht die Regel und verfehlt trotzdem seinen Zweck.

Zugehöriges WCAG-Kriterium

Keines direkt – landmark-one-main ist eine Best Practice. Sachlich gehört sie zu 1.3.1 Info und Beziehungen und 2.4.1 Blöcke umgehen. Für 2.4.1 sind Landmarks, Überschriften oder ein funktionierender Skip-Link jeweils anerkannte Wege, Wiederholtes zu überspringen.

So meldet Reviseberg diese Regel

Reviseberg führt landmark-one-main auf jeder gecrawlten Seite aus. Die Regel prüft das Dokument als Ganzes, deshalb zählt jede betroffene Seite als ein Vorkommen; liegt die Ursache in einem gemeinsamen Template, erscheint fast jede Seite. In der Befundliste steht die Regel als Best Practice mit Schweregrad, der Zahl der Seiten und den Punkten, die ein Fix zurückbringt; sie zählt nie gegen ein WCAG-Kriterium und erscheint in keinem Konformitätsbericht. Im Detail sehen Sie alle betroffenen Seiten. Mit Begründung können Sie einen Befund als „ignorieren“ oder „Fehlalarm“ markieren; jede Entscheidung wird protokolliert.

Verwandte Regeln

  • undefined – Inhalt, der außerhalb aller Landmarks steht.
  • undefined – die Seite hat keine Überschrift der ersten Ebene als Einstieg.
  • undefined – die Prüfung des Tastatur-Agenten auf einen funktionierenden Skip-Link.

Seitengerüst Ihrer ganzen Website prüfen – kostenloser Scan

Häufige Fragen

Ist ein fehlender Hauptbereich ein WCAG-Verstoß?

Nein. axe-core führt landmark-one-main als Best Practice, und so meldet Reviseberg die Regel auch. Sie hilft Screenreader-Nutzenden aber direkt und unterstützt WCAG 1.3.1 und 2.4.1.

Muss ich role="main" zusätzlich zu <main> setzen?

Nein. Aktuelle Browser erkennen <main> von sich aus als Landmark. Die doppelte Rolle schadet nicht, ist aber überflüssig.

Darf eine Seite mehrere <main>-Elemente haben?

Sichtbar sein darf immer nur eines. Weitere müssen mit dem Attribut hidden verborgen sein, etwa in einer App, die mehrere Ansichten in der Seite vorhält.

Prüft die Regel, ob der richtige Inhalt in <main> steht?

Nein, nur ob es eines gibt. Ob der Hauptbereich beim eigentlichen Inhalt beginnt, prüfen Sie von Hand.

Quellen

  1. Deque University, axe-core 4.13 Regel landmark-one-main – https://dequeuniversity.com/rules/axe/4.13/landmark-one-main
  2. WHATWG, HTML Living Standard: das Element main – https://html.spec.whatwg.org/multipage/grouping-content.html#the-main-element
  3. W3C, ARIA Authoring Practices Guide: Landmark Regions – https://www.w3.org/WAI/ARIA/apg/practices/landmark-regions/
  4. W3C, Understanding SC 2.4.1 Bypass Blocks – https://www.w3.org/WAI/WCAG22/Understanding/bypass-blocks

Sehen Sie, was ein Scan auf Ihrer Website findet

Eine Seite in rund 30 Sekunden, ohne E-Mail. Der vollständige Bericht umfasst bis zu 100 Seiten und einen Tastatur-Durchlauf.