region

Seiteninhalte sollten in einer Landmark-Region liegen

manualKonfidenz: mediumSchweregrad: minoroperable

Prüft, dass Inhalte unter <body> in einer Landmark-Region enthalten sind.

Anwendbarkeit. Gilt für eine Seite, deren <body> Inhalt hat: außerhalb jeder Landmark ein Element mit eigenem Text oder einem aria-label, ein <img>, <video>, <audio>, <canvas>, <object> oder <embed> oder ein <input> mit einem anderen Typ als type="hidden"; oder eine Landmark mit beliebigem Inhalt. Live-Regionen, Dialoge, Buttons, <svg>, <iframe>/<frame> und auflösbare Skip-Links sind kein Inhalt, der eine Landmark braucht. Nicht, solange ein modaler Dialog geöffnet ist: Der Rest der Seite ist dann inert, der Scan sieht also den Dialog, nicht die Seite. Inhalt, auf den excludeSelectors passt (global oder für diese Regel), bleibt außen vor, und eine gemeldete Lücke schließt ihn nie ein. 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. Jeder Seiteninhalt auf oberster Ebene liegt in einer Landmark-Region (main, navigation, banner, contentinfo, complementary, region, form, search), damit Personen, die mit assistiven Technologien über Landmarks navigieren, keine Inhalte verpassen, die nie in einer Landmark untergebracht wurden.

Beispiele

pass
<body>
<main>
<p>Everything lives inside a landmark.</p>
</main>
</body>

Alle Seiteninhalte liegen in einer Landmark-Region.

can't tell
<body>
<p>Stray paragraph, not inside any landmark.</p>
</body>

Dieser Absatz steht direkt unter <body>, außerhalb jeder Landmark.

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.

CONTENT_OUTSIDE_LANDMARK

  1. Suchen Sie den im Bericht genannten Inhalt (oder das iframe) auf der Seite.
  2. Öffnen Sie den Bereich „Barrierefreiheit“ der Entwicklertools oder die Landmarkenliste eines Screenreaders und sehen Sie nach, welche Landmarke ihn gegebenenfalls enthält.
  3. Entscheiden Sie, ob er in eine bestehende Landmarke gehört (header, nav, main, footer, aside) oder außerhalb aller liegt.

Bestanden. Der Inhalt liegt in einer Landmarke oder ist etwas, das keine braucht (etwa ein Sprunglink oder ein Dialog).

Nicht bestanden. Echter Seiteninhalt liegt außerhalb aller Landmarken, sodass Personen, die sich über Landmarken bewegen, ihn verpassen können (Best Practice, ARIA11).

Quellcode ansehen