WAI-ARIA-Attribute
1. Grundlegende ARIA-Attribute
Die wichtigsten ARIA-Attribute sind role
, aria-label
, aria-labelledby
, und aria-describedby
. Diese Attribute beschreiben die Funktion oder den Status eines Elements, um es verständlicher zu machen.
role: Weist einem Element eine spezifische Rolle zu.
aria-label: Gibt einem Element einen beschreibenden Namen.
aria-labelledby: Verknüpft ein Element mit einem anderen, das es beschreiben soll.
aria-describedby: Verweist auf ein Element, das zusätzliche Informationen liefert.
Beispiel:
2. role
-Attribut
role
-AttributMit dem role
-Attribut können HTML-Elementen spezielle Rollen zugewiesen werden. Es ist besonders nützlich, wenn man keine semantischen HTML-Tags verwenden kann.
button
Definiert ein Element als Schaltfläche
alert
Für Warnungen oder Fehler, wird sofort vorgelesen
navigation
Definiert eine Navigationsleiste
main
Der Hauptinhalt der Seite
banner
Definiert einen Seitenkopfbereich
dialog
Ein Dialogfeld wie ein Popup
Beispiel für eine benutzerdefinierte Schaltfläche:
Hinweis: Bei Verwendung von
role="button"
auf einem<div>
sollte dastabindex="0"
hinzugefügt werden, damit die Schaltfläche mit der Tab-Taste erreicht werden kann.
3. aria-label
aria-label
Das aria-label
-Attribut wird verwendet, um einem Element einen beschreibenden Namen zu geben, insbesondere wenn kein visueller Text vorhanden ist.
Beispiel für eine Navigation mit Icons:
4. aria-labelledby
aria-labelledby
Das aria-labelledby
-Attribut verknüpft ein Element mit einem anderen, das eine beschreibende Überschrift enthält. Es ist besonders hilfreich für Formularelemente.
Beispiel:
Hier verweist das Eingabefeld (
input
) auf das Label, und der Screenreader liest beim Fokusieren „E-Mail-Adresse“ vor.
5. aria-describedby
aria-describedby
Mit aria-describedby
wird eine zusätzliche Beschreibung für ein Element angegeben. Dies ist besonders hilfreich für Formulare mit erklärenden Texten oder Anweisungen.
Beispiel:
Wenn sich der Nutzer auf das Eingabefeld fokussiert, liest der Screenreader den Hinweis „Der Nutzername muss mindestens 8 Zeichen enthalten.“
6. Arbeiten mit aria-hidden
aria-hidden
aria-hidden="true"
versteckt ein Element vor Screenreadern, selbst wenn es visuell angezeigt wird. Es ist nützlich, wenn bestimmte Inhalte nicht vorgelesen werden sollen.
Beispiel für ein dekoratives Bild:
Da das Bild rein dekorativ ist, sollte es nicht für Screenreader zugänglich sein.
7. Zustandsangaben mit ARIA-Attributen
Es gibt verschiedene aria-*
-Attribute, die den Status von Elementen beschreiben. Diese Statusattribute helfen Screenreader-Nutzern, die aktuelle Situation oder den Status eines Elements zu verstehen.
aria-expanded
Gibt an, ob ein Element (z. B. ein Menü) geöffnet ist
aria-checked
Zeigt den Status einer Checkbox an
aria-selected
Markiert ein ausgewähltes Element
aria-disabled
Zeigt an, dass ein Element deaktiviert ist
Beispiel für ein aufklappbares Menü:
Der Screenreader erkennt nun, ob das Menü geöffnet (
aria-expanded="true"
) oder geschlossen (aria-expanded="false"
) ist.
8. Dynamische Inhalte und aria-live
aria-live
Wenn Inhalte dynamisch aktualisiert werden (z. B. bei Benachrichtigungen oder Ladezuständen), können aria-live
-Regionen verwendet werden, damit Screenreader automatisch diese Änderungen vorlesen.
aria-live="polite"
Updates werden vorgelesen, wenn der Nutzer pausiert
aria-live="assertive"
Updates werden sofort vorgelesen
Beispiel für eine Ladeanzeige:
Sobald sich der Text innerhalb des
status
-Divs ändert, informiert der Screenreader den Nutzer darüber.
9. aria-controls
, aria-owns
, und aria-flowto
aria-controls
, aria-owns
, und aria-flowto
Diese Attribute werden genutzt, um eine Verbindung oder Reihenfolge zwischen Elementen herzustellen.
aria-controls
: Zeigt, dass ein Element ein anderes steuert.aria-owns
: Definiert die visuelle Hierarchie, z. B. bei verschachtelten Elementen.aria-flowto
: Bestimmt die Lesereihenfolge für Screenreader.
Beispiel mit aria-controls
:
Zusammenfassung
Mit ARIA-Attributen kannst du die Zugänglichkeit deiner Webseite signifikant verbessern. Hier sind die wichtigsten Punkte noch einmal zusammengefasst:
Beschreibende Labels: Verwende
aria-label
,aria-labelledby
, undaria-describedby
, um Elemente zu beschreiben.Zustandsverwaltung: Nutze
aria-expanded
,aria-selected
,aria-checked
, um den Zustand von Elementen zu definieren.Verbindung und Kontrolle: Setze
aria-controls
,aria-owns
, undaria-flowto
, um die Reihenfolge und Struktur zu verdeutlichen.Live-Updates: Mit
aria-live
kannst du dynamische Inhalte für Screenreader aktualisieren.
Mit diesen Grundlagen hast du eine solide Basis, um ARIA-Attribute sinnvoll in deiner WordPress-Seite einzusetzen.
Zuletzt aktualisiert