landmark-no-duplicate-main

Seite darf nicht mehr als eine Main-Landmark haben

manualKonfidenz: mediumSchweregrad: minoroperable

Prüft, dass es auf der Seite höchstens eine Main-Landmark (role="main" oder <main>) gibt.

Anwendbarkeit. Gilt, sobald die Seite mindestens eine Main-Landmark enthält (explizites role="main" oder ein implizites <main>). Ein Custom Element, dem seine ElementInternals eine Landmark-Rolle geben (this.attachInternals().role), ohne role-Attribut, das eine andere nennt, ist eine Landmark wie ein natives Element mit dieser Rolle.

Erwartung. Auf der Seite gibt es höchstens eine Main-Landmark. Das ist eine eigene, atomare Entscheidung, getrennt von landmark-one-main (jene Regel meldet auch null main-Bereiche; diese hier meldet nur mehr als einen).

Was ein Befund meldet.

  • count: wie viele main-Landmarks die Seite assistiven Technologien bereitstellt, bei einer Obergrenze von 1.

Diese Felder in data.details helfen, einen Befund zu lesen und zu reproduzieren. Außer reasonCode und den wenigen Feldern, die Ausgabeschema als stabil nennt, sind sie kein stabiler Vertrag: Ein Feld kann in einer Minor-Version umbenannt werden oder wegfallen, bauen Sie also nicht darauf auf.

Beispiele

pass
<body>
<main>Only one</main>
</body>

Es gibt nur eine Main-Landmark.

can't tell
<body>
<main>First</main>
<main>Second</main>
</body>

Zwei <main>-Elemente werden assistiven Technologien beide als Main-Landmarks bereitgestellt.

So prüfen Sie es

Wenn diese Regel nicht entscheiden kann, meldet sie cantTell und überlässt die Frage einer Person. Jede Frage, die sie stellen kann, steht hier unter ihrem Reason-Code, mit den Schritten, um sie zu beantworten. Ein Befund enthält dieselben Schritte in howToCheck, in der Sprache des Scans. Siehe Ausgabeschema.

LANDMARK_DUPLICATE_MAIN

  1. Öffnen Sie die Landmarkenliste eines Screenreaders oder den Bereich „Barrierefreiheit“ und zählen Sie die main-Landmarken.
  2. Entscheiden Sie für jede im Bericht genannte, welche den Hauptinhalt der Seite enthält.
  3. Prüfen Sie, ob jedes andere main verborgen ist (das Attribut hidden), wenn es nicht die aktuelle Ansicht ist.

Bestanden. Assistive Technologien finden nur eine main-Landmarke, um den Hauptinhalt der Seite.

Nicht bestanden. Mehr als ein main wird bereitgestellt, sodass Nutzende nicht erkennen, welches der Hauptinhalt ist; ein Verstoß gegen die Best Practice der WAI-ARIA-Rolle main und die HTML-Regel eines einzigen sichtbaren main.

Verwandte Regeln

Quellcode ansehen