dialog-name-present
Dialoge haben einen zugänglichen Namen
Prüft, dass Dialoge (Elemente mit role="dialog" oder role="alertdialog" sowie native <dialog>-Elemente) einen nicht leeren zugänglichen Namen bereitstellen.
Anwendbarkeit. Gilt für Elemente im Accessibility Tree, deren Rolle dialog oder alertdialog ist: ein Element, dessen role-Attribut zu einer dieser Rollen aufgelöst wird (es zählt das erste Token, das eine konkrete ARIA-Rolle nennt, daher ist role="alertdialog dialog" ein alertdialog), und ein natives <dialog>, dessen role-Attribut fehlt oder keine konkrete Rolle nennt (seine implizite Rolle ist dialog). Ein geschlossenes <dialog> ist ausgeblendet und liegt daher außerhalb des Geltungsbereichs. Ein Custom Element, dem seine ElementInternals eine dieser Rollen geben (this.attachInternals().role), ohne role-Attribut, das eine andere nennt, zählt wie ein natives Element mit dieser Rolle.
Erwartung. Das Element hat einen nicht leeren zugänglichen Namen aus aria-label, aus einem aria-labelledby, das zu nicht leerem Text aufgelöst wird, oder aus title. Beide Rollen sind ausschließlich name-from-author, daher wird die Überschrift oder der Fließtext im Dialog nicht als dessen Name akzeptiert, sofern aria-labelledby nicht darauf verweist.
Beispiele
<div role="dialog" aria-label="Confirm deletion"><p>Are you sure?</p></div>
aria-label benennt den Dialog.
<div role="dialog"><p>Body text only.</p></div>
Kein zugänglicher Name; sichtbarer Fließtext zählt nicht zum Namen eines Dialogs.
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.
name_internals
- Untersuchen Sie den im Bericht genannten Dialog, ein benutzerdefiniertes Element, und notieren Sie die Rolle.
- Öffnen Sie den Bereich „Barrierefreiheit“ in den Entwicklertools des Browsers und lesen Sie den zugänglichen Namen des Elements.
- Navigieren Sie mit einem Screenreader zum Element und hören Sie sich den angesagten Namen an.
Bestanden. Der Barrierefreiheitsbaum zeigt einen Namen für den Dialog, über die Internals oder anders gesetzt, und der Screenreader sagt ihn an.
Nicht bestanden. Der Dialog hat keinen Namen im Barrierefreiheitsbaum, und der Screenreader sagt nur die Rolle an; das verstößt gegen WCAG 4.1.2.