Zum Inhalt springen

Das Attribut aria-label gibt einem Element einen zugänglichen Namen, also die Bezeichnung, die Screenreader beim Fokussieren ansagen. Es ersetzt dabei den sichtbaren Textinhalt des Elements, ohne die visuelle Darstellung zu verändern.

Die Hauptfunktion von ARIA-Labels besteht darin, alternative textuelle Beschreibungen für Inhalte bereitzustellen. Dies ist besonders relevant bei:

  • Buttons ohne sichtbaren Text

  • Icons oder Symbol-Buttons

  • Komplexen Bedienelementen wie Slidern oder Custom-Controls

  • Elementen, deren sichtbarer Text nicht ausreichend beschreibend ist

Ein klassisches Beispiel ist ein Schließen-Button mit X-Symbol:

<button aria-label="Dialog schließen">×</button>

ARIA-Labels können auch verwendet werden, wenn der sichtbare Text eines Elements für Screenreader-Nutzer durch einen präziseren Text ergänzt werden soll. Dies ist beispielsweise bei Navigationslinks sinnvoll, die mehr Kontext benötigen:

<a href="p1.html" aria-label="Weiter zum Artikel über Barrierefreiheit">Weiter</a>

Wichtig zu beachten ist der Unterschied zu aria-labelledby und aria-describedby:

  • aria-label definiert direkt einen Text

  • aria-labelledby verweist auf die ID eines anderen Elements, dessen Inhalt als Label verwendet wird

  • aria-describedby bietet zusätzliche, ergänzende Beschreibungen

  • aria-labelledby schlägt aria-label, und aria-label schlägt den sichtbaren Inhalt.

Bei der Verwendung von ARIA-Labels sollten einige wichtige Grundsätze beachtet werden:

  1. Der Text sollte prägnant und informativ sein

  2. Redundante Informationen sollten vermieden werden

  3. An Elementen ohne Rolle (etwa <div> oder <span>) bleibt aria-label wirkungslos

  4. Das Label muss in der Sprache der Seite verfasst sein

  5. Kein aria-label an Elementen, die bereits einen aussagekräftigen sichtbaren Text haben

ARIA-Labels sind ein mächtiges Werkzeug für barrierefreies Webdesign, sollten aber nicht übermäßig eingesetzt werden. Wenn ein Element bereits einen aussagekräftigen, sichtbaren Text hat oder durch seine HTML-Semantik ausreichend beschrieben ist, ist kein zusätzliches ARIA-Label erforderlich. Die beste Praxis ist, zunächst native HTML-Elemente und deren eingebaute Semantik zu nutzen und ARIA-Labels nur dort einzusetzen, wo sie wirklich notwendig sind.