WCAGdesk
axe-core: aria-valid-attr-value · WCAG 4.1.2 Name, Role, Value · Stufe A

Wie Sie das „aria-valid-attr-value“-Problem beheben

Die axe-core-Regel aria-valid-attr-value schlägt fehl, wenn ein ARIA-Attribut einen von der Spezifikation nicht erlaubten Wert trägt — meist ein aria-labelledby oder aria-describedby, das auf eine nicht existierende ID zeigt. WCAG 2.2 (4.1.2, Stufe A).

Was axe-core prüft

axe-core validiert den Wert jedes ARIA-Attributs: dass Token-Werte erlaubt sind und ID-Referenzen (aria-labelledby, aria-controls) auf existierende Elemente zeigen.

Welcher Norm das entspricht

WCAG 2.24.1.2 Name, Role, Value (Stufe A)
EN 301 5499.4.1.2
BFSG / EAABFSG § 12 i. V. m. EN 301 549 · EAA Anhang I
KategorieARIA

Warum es zählt

Eine kaputte aria-labelledby-Referenz entfernt stillschweigend den Namen eines Bedienelements — der Nutzer hört nichts. Solche Fehler sind am Bildschirm unsichtbar und zeigen sich nur mit Hilfstechnik — genau die Lücke, die eine BFSG-Prüfung sucht.

Häufige Ursachen

  • aria-labelledby zeigt auf fehlende/falsch getippte ID
  • aria-expanded="open" statt true/false
  • aria-controls referenziert ein per JS entferntes Element
  • Ein Template dupliziert IDs, die Referenz wird mehrdeutig

Wie Sie es beheben

Sorgen Sie dafür, dass jede von ARIA referenzierte ID existiert und eindeutig ist, und nutzen Sie nur die erlaubten Token-Werte je Attribut.

<!-- Fehler: #lbl existiert nicht -->
<div role="dialog" aria-labelledby="lbl">…</div>

<!-- Besteht -->
<h2 id="dlg-title">Adresse</h2>
<div role="dialog" aria-labelledby="dlg-title">…</div>

FAQ

Erlaubte Werte für aria-expanded?

Nur „true“ oder „false“ (oder undefiniert). Wörter wie „open“ oder Zahlen sind ungültig.

Wie finde ich die falsche Referenz?

axe nennt Attribut und Wert im Bericht; prüfen Sie, ob die referenzierte ID existiert und exakt gleich geschrieben ist.

Finden Sie jeden solchen Fehler auf Ihrer Seite

Starten Sie einen kostenlosen WCAG 2.2 AA-Scan — echte axe-core-Engine, ohne Anmeldung. Oder ein zeitgestempelter Beweis-Report für 29 €.