Gehirngerecht Digital

WCAG-Kriterien für: Entwicklung

Ein blaues Viereck mit Sonnenbrille und einem Mund. Es hat eine Maus und eine Tastatur in der Hand. Es symbolisiert Entwicker*innen.

Filter:

Kurzbeschreibung:

Bedienelemente, die ohne Text auskommen, wie klickbare Icons oder andere klickbare Bilder, brauchen eine Textalternative, damit sie von Screenreader ausgelesen werden können.

Zwei Pfeile. Einer hat kein Aria-Label. Das Zweite hat eins, in dem s steht die Funktion: Zurück.

Kurzbeschreibung:

Wenn du ein grafisches CAPTCHA einsetzt, musst du mindestens eine Alternative dafür bereitstellen.

Eine Illustration von einem Text-CAPTCHA, bei dem man Buchstaben und Zahlen eingeben muss. Daneben ist ein alternatives Audio-CAPTCHA, bei dem man etwas anhören und dann die Antwort darauf eintippen muss.

Kurzbeschreibung:

Listen müssen im HTML-Code auch als Listen ausgezeichnet sein. Sie brauchen also entweder ein <ul>, <ol> oder ein <dl>, je nachdem, für welchen Zweck du die Liste nutzt.

Beispiel einer ungeordneten Liste und den richtigen HTML-Elementen dafür.

Kurzbeschreibung:

Formulare müssen so aufgebaut sein, dass ihre Struktur und Zusammenhänge auch im Code richtig hinterlegt sind. Dazu gehört, dass jedes Feld einen verständlichen Namen hat und dass Gruppen von Feldern programmatisch als Einheit ausgezeichnet werden.

Eine Illustration von einem Kontaktformular. Man sieht das Input-Feld für Vorname. Darüber ist eine Beschriftung des Feldes, die durch das HTML "for"-Element mit dem Input-Feld darunter verknüpft ist.

Kurzbeschreibung:

Paragrafen und Text-Formatierungen (fett, kursiv usw.) müssen die richtigen HTML-Elemente nutzen. Du darfst keine leeren Paragrafen und doppelte Zeilenumbrüche (<br>) für Abstände nutzen.

Beispiel von einem Paragrafen, der einen gefetteten Text beinhaltet. Der Text wurde hier richtig mit einem strong-Tag gefettet.

Kurzbeschreibung:

Wenn deine Webseite noch HTML-Tabellen fürs Layout nutzt, solltest du das schnellstens ändern!

Eine Illustration von einem Layout, dass mit einer Tabellenstruktur gemacht wurde. Das HTML-Mark-up im Tabellen-header ist durchgestrichen, weil es nicht verwendet werden darf.

Kurzbeschreibung:

Deine Datentabellen müssen mit den richtigen HTML-Elementen ausgezeichnet sein, um auch von assistiven Technologien verstanden zu werden.

Eine Tabelle mit einer Kopfzeile. Dazu sind die richtigen HTML-Elemente angegeben.

Kurzbeschreibung:

Die Köpfe von Tabellen müssen als <th> ausgezeichnet werden. Für komplexere Tabellen brauchst du außerdem das »scope«-Attribut.

Eine Illustration einer Tabelle. Die Tabelle hat zwei Kopfzeilen, ein mal oben und ein mal links. Es sind die HTML-Attribute zu sehen, die man benötigt, um das zu beschreiben. Und zwar scope ist gleich "row" und scope ist gleich "col".

Kurzbeschreibung:

Überschriften müssen auch als solche im Code ausgezeichnet sein und sollten die richtige Reihenfolge einhalten (keine <h5> nach einer <h2> usw.).

In einem Browserfenster sind drei Überschriften untereinander dargestellt. Die Größte steht oben und ist mit einem Tag als h1 gekennzeichnet. Darunter folgen eine kleinere h2 und eine noch kleinere h3.

Kurzbeschreibung:

Zitate (zum Beispiel von Kund*innen) benötigen die richtige Auszeichnung als <blockquote>.

In einer Sprechblase steht: "Ich bin eine Kundenreview auf der Seite." Der Text ist in dem HTML-Element Blockquote angezeigt.

Kurzbeschreibung:

Das visuelle Anordnen von Elementen darf die logische Reihenfolge der Elemente nicht so beeinflussen, dass sie für Screenreader-User keinen Sinn mehr ergeben.

Illustration einer Webseite, in der die Elemente mit Zahlen benannt sind, um die Reihenfolge anzuzeigen.

Kurzbeschreibung:

Eine Website sollte sowohl im Hoch- als auch im Querformat funktionieren. Wenn du also Inhalte auf deinem Handy (oder auf anderen Geräten) betrachtest und es um 90 Grad drehst, muss sich die Webseite auch anpassen.

Zwei Illustrationen von einem Handy. Ein mal steht es und ein mal liegt es. Darin ist ein Kontaktformular gezeigt, dass seine Anordnung ändert, wenn das Handy anders gehalten wird.

Kurzbeschreibung:

Wenn User*innen persönliche Daten, wie Name, Adresse oder Passwort, eingeben sollen, müssen die autocomplete-Attribute an den Eingabefeldern die richtigen Werte haben.

Illustration von einem Formularfeld. Darauf steht Personen-Daten-Formular. Es sind zwei Eingabefelder zu sehen, Name und E-Mail-Adresse. Darunter ist jeweils ein autocomplete-Tag mit der richtigen Bezeichnung für das Feld.

Kurzbeschreibung:

Deine Webseite muss bei einem Zoom von 400 % oder bei 320px Breite so funktionieren, dass alle Inhalte und Funktionalitäten erhalten bleiben, ohne Texte zweidimensional (horizontal und vertikal) scrollen zu müssen.

Ein Text, der sich richtig anpasst, wenn man zoomt.

Kurzbeschreibung:

Wenn ich den Zeilen- oder Buchstabenabstand vergrößere, dürfen die Texte der Website nicht abgeschnitten oder verdeckt werden.

Zwei Verstöße gegen das Kriterium: Einmal werden Texte einfach abgeschnitten und einmal überlagern sie sich mit anderen Texten.

Kurzbeschreibung:

Eingeblendete Elemente (wie Menüs) sollten sich per ESC-Taste schließen lassen. Außerdem dürfen sie sich weder von alleine schließen, noch wenn man sich mit der Maus über sie bewegt.

Illustration von einer Website mit Navigation. Ein Menü-Punkt hat ein Untermenü, welches ausgeklappt ist. Ein Mauszeiger hovert über den obersten Menü-Punkt.

Kurzbeschreibung:

Wenn deine Website automatisch Geräusche macht, die länger als drei Sekunden dauern, musst du die Möglichkeit geben, sie abzuschalten.

Eine Illustration einer Audiodatei auf einer Website. Die Audiodatei läuft, man kann sie aber über einen Button stoppen.

Kurzbeschreibung:

Stelle sicher, dass auf 200 % vergrößert werden kann. Dabei dürfen Texte oder andere Inhalte nicht verdeckt werden oder sogar ganz verschwinden. Alle Funktionen der Website müssen nutzbar bleiben.

Illustration einer Webseite. Einmal mit normaler Textgröße und einmal mit 200 % Textgröße.

Kurzbeschreibung:

Deine Website muss vollständig mit der Tastatur bedient werden können. Das heißt, dass alle Inhalte per Tastatur erreicht und alle notwendigen Funktionalitäten bedient werden können.  

Eine Illustration einer Tastatur

Kurzbeschreibung:

Wenn per Tastatur eine Komponente der Seite erreicht werden kann, muss ich die Komponente auch wieder verlassen können. Man darf also nicht steckenbleiben und dadurch zum Beispiel gezwungen werden, die Seite neu zu laden.

Ein Modal, dessen Schließ-Button nicht mit der Tastartur zu erreichen ist.

Kurzbeschreibung:

Wenn deine Webseite einzelne Zeichen (Buchstaben, Ziffern, Sonderzeichen) mit Funktionen belegt, müssen diese anpassbar oder abschaltbar sein.

Einstellungen zu Tastenbefehlen, Illustration von den Tasten, S, Z und M. Daneben steht, wofür sie Kurzbefehle sind und ein Switch-Knopf, um sie an- und auszuschalten.

Kurzbeschreibung:

Haben Inhalte oder Funktionen auf deiner Seite zeitliche Begrenzungen, müssen diese abschaltbar, anpassbar oder verlängerbar sein.

Illustration eines Modals, das den Nutzer warnt, dass er in 20 Sekunden ausgeloggt wird.

Kurzbeschreibung:

Animationen, die auf deiner Website automatisch starten, müssen pausiert, gestoppt oder versteckt werden können, wenn sie länger als fünf Sekunden dauern.

Eine Illustration von einem Slider auf einer Webseite. Der Slider hat ein Pause-Knopf, um ihn anzuhalten.

Kurzbeschreibung:

Auf Webseiten sollten Inhalte nicht mehr als dreimal pro Sekunde blinken. Darunter fallen zum Beispiel blinkende Buttons oder hektische GIFs.

Unser Maskottchen Tine, dem ganz schwummrig ist, weil eine Website zu viel geflackert hat!

Kurzbeschreibung:

Auf deiner Seite muss es möglich sein, sich wiederholende Bereiche (wie Header und Footer) zu überspringen. Nutze dafür zum Beispiel Sprunglinks, Landmarks und eine gute Überschriften-Struktur.

Ein Beispiel von einem Sprunglink, der in einem Header angezeigt wird und mir ermöglicht direkt zum Hauptinhalt zu springen.

Kurzbeschreibung:

Interaktive Elemente dürfen, wenn sie per Tastatur fokussiert sind, nicht von anderen Inhalten verdeckt werden. Sticky-Header, aufklappbare Menüs oder Dialoge können zum Beispiel zu Problemen führen.

Ein Sticky-Header überdeckt einen Button.

Kurzbeschreibung:

Jede Seite benötigt einen sinnvollen HTML-Titel, damit ich sie im Browser leichter finden kann. Der Titel sollte den »Namen der momentanen Seite« plus den »Namen der ganzen Webseite« beinhalten.

Illustration einer Website mit Titel, bestehend aus dem Namen der Seite, auf der man sich befindet, sowie dem Namen der ganzen Webseite.

Kurzbeschreibung:

Mit der Tastatur (Tab-Taste) sollten die Inhalte deiner Website in einer sinnvollen Reihenfolge angesteuert werden können. Im Normalfall folgt die Tab-Reihenfolge der visuellen Reihenfolge.

Eine Seite mit Zahlen-Markierungen für die Reihenfolge, in der die Elemente angesteuert werden sollen.

Kurzbeschreibung:

Die Unterseiten deiner Webseite müssen auf mehr als einem Weg erreichbar sein. Zusätzlich zur Navigation musst du eine Suche oder eine Sitemap anbieten.

Illustration von einem Menü-Symbol und einem Lupen-Symbol. Darunter noch ein Menü-Symbol und ein Sitemap-Symbol. Beide sind mit einem grünen Haken versehen.

Kurzbeschreibung:

Alle interaktiven Elemente, wie Links, Buttons oder Formularfelder, benötigen einen visuellen Zustand, der deutlich macht, dass das Element per Tastatur fokussiert ist. Wir empfehlen, einen Fokusrahmen zu nutzen, da dieser sehr deutlich zu erkennen ist und auf jedem Elemente konsistent gleich aussieht.

Illustration von zwei Buttons. Der Erste hat einen Fokus-Rahmen, der Zweite nicht. Der Erste ist richtig, der Zweite ist ein Fehler.

Kurzbeschreibung:

Alle Funktionen deiner Website müssen mit einfachen Eingaben ausgeführt werden können. Komplexere Gesten, wie Swipen oder Aktionen mit mehreren Fingern, brauchen eine entsprechende Alternative.

Illustration von einem Handy. Darin ist ein Bild von einem Dreieck, dass sexy sein soll. Darüber steht: Swipe nach links oder rechts. Darunter sind zwei Buttons, die Ja und Nein symbolisieren. Daneben steht, dass eine Wischen-Aktion nur barrierefrei ist, wenn es Buttons als Alternative zum Swipen gibt.

Kurzbeschreibung:

Aktionen, die über eine einfache Eingabe ausgeführt werden, dürfen nicht bereits beim Tippen oder Klicken und Halten ausgeführt werden, sondern erst beim Loslassen, damit die Aktion auch abgebrochen werden kann.

Illustration von zwei Buttons. Einer wird von einem Finger gedrückt. Darüber steht, dass nicht direkt eine Aktion ausgeführt werden darf, wenn man den Finger auf einem Bedienelement hat.

Kurzbeschreibung:

Funktionen, die durch Bewegung des Geräts (z. B. Schütteln, Neigen, Drehen) ausgelöst werden können, brauchen eine Alternative, die ohne Bewegung funktioniert. Die Aktivierung über Bewegung muss außerdem abgeschaltet werden können.

Illustration von einem Handy, welches geschüttelt wird. Daneben ein Plus und ein Button, der da sein muss, um die gleiche Aktion auszuführen, die mit dem Schütteln ausgeführt wird.

Kurzbeschreibung:

Wenn deine Website Funktionen bietet, die Drag-and-Drop-Gesten voraussetzen, müssen diese eine einfachere Alternative haben, wie das Klicken eines Buttons.

Ein Beispiel eines Feldes, in das der Nutzende eine Datei reinziehen kann. Dazu gibt es noch die Alternative Möglichkeit über einen Button eine Datei hochzuladen.

Kurzbeschreibung:

Gib im <html>-Element das »lang«-Attribut an, damit assistive Technologien die Seite in der richtigen Sprache wiedergeben oder auch die automatische Übersetzung im Browser richtig funktioniert.

Illustration einer Website bei der im language-Attribut die Sprache Deutsch angegeben ist.

Kurzbeschreibung:

Wenn man mit der Tastatur den Fokus auf ein Element setzt, darf dadurch keine unerwartete Funktion ausgelöst werden. Funktionen sollen nur durch Bestätigung per Enter, Space oder Mausklick ausgeführt werden.

Der Absende-Button eines Kontakt-Formulars hat den Fokus. Dadurch darf das Formular noch nicht abgesendet werden.

Kurzbeschreibung:

Das Interagieren mit Formularelementen wie Textfeldern oder Checkboxen führt nicht zu einer Kontextänderung, es sei denn, der Benutzer wurde vor der Nutzung des Elements über dieses Verhalten informiert.

Eine Illustration einer Checkbox. Diese löst unerwartet Kontextänderungen aus, wenn man sie anklickt. Sie bewegt den Fokus weg oder öffnet einen neuen Tab.

Kurzbeschreibung:

Fehler sollten leicht erkennbar sein und nicht nur durch Farben hervorgehoben werden. Du benötigst zusätzlichen Text, um sie zu beschreiben.

Zwei Inputfelder in die ein falsches Passwort eingegeben wurde. Das ist auf unterschiedliche Weise gekennzeichnet. Bei dem oberen Input steht über dem Feld hinter dem Label: Passwort, in Klammern: Passwort ist falsch. Bei dem unteren Input steht der Hinweis: Das Passwort ist falsch, unter dem Feld. Beides sind richtige Wege.

Kurzbeschreibung:

Formularfelder, einschließlich Checkboxen, brauchen klare und aussagekräftige Beschriftungen (Labels). Diese sollten immer sichtbar sein.

Zwei Formularfelder. Das erste hat keine Beschriftungen, das zweite schon.

Kurzbeschreibung:

Schreibe den Text einer Fehlermeldung möglichst konkret. Gib dazu an, wie ich den Fehler beheben kann.

Es sind zwei Fehlermeldungen abgebildet. Die Erste sagt nur: Fehlerhafte Eingabe, die Zweite ist ausführlicher mit: Das Passwort ist falsch. Es muss mindestens 12 Zeichen enthalten! Die Zweite ist richtig, da sie nicht nur den Fehler, sondern auch direkt einen Lösungsvorschlag liefert.

Kurzbeschreibung:

Beim Ausführen einer Transaktion oder einer Interaktion, die negative Konsequenzen haben kann, muss es eine Möglichkeit geben, die Aktion vor dem Absenden zu prüfen oder sie im Nachgang rückgängig zu machen.

Modal, in dem steht: "Du bist gerade dabei 1 Million an Gehirngerecht zu überweisen!" Darunter befinden sich zwei Buttons, mit dem linken kann man die Aktion rückgängig machen, mit dem rechten bestätigt man: "Sie haben's verdient!"

Kurzbeschreibung:

Ich sollte Informationen nur einmal eingeben müssen. Die Website sollte die Infos dann beim nächsten Mal von allein eintragen oder Vorschläge machen. Ausnahme: Die Eingabe ist sicherheitsrelevant.

Es sind zwei Formulare mit einem Feld zu sehen, Schritt 1 und Schritt 2. Die Eingabe des Namens wiederholt sich bei dem 2. Schritt. Das sollte nicht passieren!

Kurzbeschreibung:

Wenn Nutzende ihre Identität bestätigen müssen, darf dafür kein kognitiver Funktionstest (Passwort merken) nötig sein. Das Einfügen mit Copy & Paste oder das Befüllen durch einen Passwort-Manager muss zum Beispiel möglich sein.

Login-Formular, in das man die Daten per Copy-Paste oder per Password-Manager einfügen kann.

Kurzbeschreibung:

Native HTML-Elemente bringen meist alles mit, um von assistiven Technologien verstanden zu werden. Entwickelst du sie selbst, musst du dafür sorgen, dass die Elemente für den Accessibility-Tree zugänglich sind.

Eine Checkbox mit dem Output des Accessibility-Trees daneben. Man sieht Namen, Rolle und Zustand der Checkbox angegeben.

Kurzbeschreibung:

Wenn du Statusnachrichten oder Benachrichtigungen einblendest, müssen diese auch assistiven Technologien automatisch mitgeteilt werden.

Ein Beispiel von einer Statusmeldung, die von einem Screenreader vorgelesen wird.

Filter nach Rollen:

Zurück zu allen WCAG-Kriterien

Die WCAG-Kriterien als Poster!

Das WCAG Poster stellt eine Übersicht aller WCAG A und AA Kriterien dar.

WCAG Poster (Digital)

Unser Plakat der WCAG 2.2. Richtlinien als digitale Version. Die Auflösung ist 360dpi und sollte hoffentlich problemlos zoom-bar sein!Alle Erlöse deiner Bestellung gehen an: Lupus Erythematodes Selbsthilfegemeinschaft e. V.Zur Verkaufsseite des WCAG-Posters