
WCAG-Farbkontrast online prüfen: AA, AAA und großer Text
Zu geringer Kontrast zwischen Text und Hintergrund ist der häufigste Barrierefreiheitsfehler im Web. Prüfen Sie AA/AAA, indem Sie einfach zwei Farben einfügen — kein Plugin, keine Erweiterung nötig.
Kontrast: der häufigste Barrierefreiheitsfehler im Web
Jedes Jahr stuft der WebAIM-Million-Audit (eine Analyse der meistbesuchten Startseiten im Web) unzureichenden Textkontrast als häufigsten erkannten WCAG-Verstoß ein — noch vor fehlendem Alt-Text oder nicht beschrifteten Links. Es ist zudem eines der wenigen Barrierefreiheitskriterien, das sich in Sekunden prüfen lässt, ganz ohne Screenreader oder vollständiges Audit. Der FastMinify-Kontrastprüfer berechnet das WCAG-2.2-Verhältnis zwischen zwei CSS-Farben (HEX, RGB, HSL, OKLCH, color() oder benannte Farben) und zeigt sofort AA/AAA-Ergebnisse für normalen Text, großen Text und Nicht-Text-Elemente — ohne dass etwas an einen Server gesendet wird. Er geht über ein einzelnes Farbpaar hinaus: Ein Matrixmodus erlaubt es, eine ganze Vordergrundpalette gegen eine ganze Hintergrundpalette in einem Durchgang zu prüfen. Der gesamte Cluster liegt im Farbe-&-CSS-Hub.
Die Kontrastfehler, die immer wieder vorkommen
Ein Grauton #999999 auf Weiß ergibt ein Verhältnis von etwa 2,85:1 — deutlich unter dem AA-Schwellenwert von 4,5:1. Trotzdem ist es eine der häufigsten Design-Entscheidungen für Sekundärtext, Platzhalter und Bildunterschriften.
"Weiche" Markenfarben (Pastellblau, Mintgrün, Hellorange) werden oft für die visuelle Identität gewählt, ohne je mit weißem Text darauf getestet zu werden.
Eine weiße Überschrift funktioniert über dem dunklen Teil des Himmels eines Hero-Fotos, wird aber unlesbar über dem hellen Teil einer Wolke — der Kontrast schwankt je nach Position im Bild.
outline: none ohne Ersatz zerstört die Tastaturnavigation — und Nicht-Text-Kontrast (SC 1.4.11) gilt auch für Fokusindikatoren, nicht nur für Text.
AA, AAA und großer Text: Welches Verhältnis ist das Ziel?
Das Kriterium WCAG 1.4.3 (Contrast Minimum) verlangt für normalen Text auf Stufe AA ein Verhältnis von mindestens 4,5:1. Die strengere Stufe AAA (Kriterium 1.4.6) erhöht die Anforderung auf 7:1. AA ist die Stufe, die von nahezu allen gesetzlichen Vorgaben verlangt wird (BITV/EN 301 549 in Europa, ADA in den USA, RGAA in Frankreich); AAA bleibt empfohlen, wird aber selten für eine ganze Website vorgeschrieben.
WCAG definiert "großen Text" als Text ab mindestens 24px (18pt), oder ab mindestens 18,67px (14pt), wenn er fett ist (Schriftstärke ≥ 700). Unterhalb dieser Schwellenwerte gilt Text als normal, selbst wenn er visuell groß wirkt. FastMinify berechnet automatisch den anwendbaren Schwellenwert aus der eingegebenen Größe und Stärke.
Seit WCAG 2.1 verlangt das Kriterium 1.4.11 (Non-text Contrast) ein Verhältnis von mindestens 3:1 für UI-Komponenten (Ränder von Formularfeldern, Kontrollkästchen, bedeutungstragende Icons, Fokusindikatoren) gegenüber ihrer angrenzenden Farbe — nicht nur für Text.
Wie das Kontrastverhältnis tatsächlich berechnet wird
Das WCAG-2.x-Verhältnis vergleicht die relative Leuchtdichte beider Farben (ein Wert von 0 bis 1, abgeleitet aus linearisierten RGB-Kanälen, gewichtet mit 0,2126 für Rot, 0,7152 für Grün, 0,0722 für Blau — das menschliche Auge nimmt Grün deutlich intensiver wahr als Blau). Das endgültige Verhältnis ist (L1 + 0,05) / (L2 + 0,05), wobei L1 die Leuchtdichte der helleren Farbe ist. Deshalb können zwei "deutlich unterschiedliche" Farben ein ähnliches Verhältnis ergeben, während zwei ähnlich wirkende Farbtöne sehr unterschiedliche Leuchtdichten haben können.
Vorher
Nachher
color() als Eingabe und konvertiert sie vor der Berechnung nach sRGB (über colorjs.io)Das WCAG-2.x-Verhältnis hat eine bekannte Schwäche: Es behandelt "Schwarz auf Weiß" und "Weiß auf Schwarz" symmetrisch, was nicht immer der tatsächlichen Wahrnehmung entspricht. APCA (Advanced Perceptual Contrast Algorithm), ein Kandidat für WCAG 3, berücksichtigt Polarität (heller Text auf dunklem Hintergrund vs. umgekehrt) und Schriftgröße für eine feinere Bewertung. FastMinify bietet ein optionales APCA-Overlay zusätzlich zum offiziellen WCAG-2.2-Verhältnis an — nicht als Ersatz, da WCAG 3 noch kein veröffentlichter Standard ist.
color-contrast-checker-Workflow: vom Farbpaar zur kompletten Palette
Öffnen Sie den Kontrastprüfer und fügen Sie Ihre Vordergrund- und Hintergrundfarbe in einem beliebigen CSS-Format ein (HEX, RGB, HSL, OKLCH, benannt). Verhältnis und AA/AAA/Nicht-Text-Badges aktualisieren sich live. Passen Sie Textgröße und -stärke an, um zu sehen, wie der Schwellenwert für "großen Text" automatisch greift.
Schritt 1 — Beide Farben einfügen
Vordergrund und Hintergrund, in jedem gültigen CSS-Format. Keine manuelle Umrechnung nötig.
Schritt 2 — Textgröße und -stärke einstellen
Standard 16px/400 (normaler Text). Wechseln Sie zu 24px oder 18,67px+fett, um eine Überschrift zu testen — der Schwellenwert für "großen Text" (3:1/4,5:1) greift automatisch.
Schritt 3 — Ergebnis ablesen
Exaktes Verhältnis (z. B. 4,87:1), Badge AA/AAA/AA-large/nicht bestanden für Text, und ein separates Ergebnis für Nicht-Text-Kontrast (3:1, SC 1.4.11).
Ein Primär-Button hat oft drei Farbvarianten (normal, hover, disabled), die einzeln oft ungetestet bleiben.
Statt die Kombinationen eines Design-Systems einzeln zu testen, fügen Sie Ihre Liste von Textfarben als Zeilen und Ihre Liste von Hintergrundfarben als Spalten ein (bis zu 16 Farben pro Achse). Das Ergebnis zeigt ein Raster mit dem Ergebnis jeder Kreuzung, filterbar nach Konformitätsstufe (AAA / AA / AA-large / nicht bestanden).
Jede Prüfung (Farben, Textgröße, Matrix- oder Paarmodus, APCA-Optionen) wird in der URL kodiert. Kopieren Sie den Link aus der Adressleiste und fügen Sie ihn in einen Pull Request, ein Ticket oder eine Nachricht an Ihr Designteam ein — die Seite öffnet sich exakt im selben Zustand.
Kontrast zum CI-Kriterium machen, nicht nur zum Design-Hin-und-Her
Ein manueller Prüfer eignet sich hervorragend zum Entwerfen einer Palette; um Regressionen zu vermeiden, sollte Kontrast außerdem bei jedem Pull Request automatisch geprüft werden. axe-core und Lighthouse CI erkennen die meisten Kontrastfehler bei statischem Text (bei Text über Bildern oder Verläufen tun sie sich schwerer).
Einfaches Beispiel
Schnelle manuelle Prüfung, keine Installation, keine gesendeten Daten. Der Matrixmodus, einzigartig unter diesen Optionen, erlaubt es, ein komplettes Design-System in einem Durchgang zu prüfen, und die teilbare URL erleichtert die Zusammenarbeit zwischen Design und Entwicklung. Einschränkung: Es ist eine manuelle Prüfung, die kein automatisiertes CI-Audit ersetzt, und sie erkennt keinen Kontrast auf einem Bild oder einem komplexen Verlauf.
Der integrierte Farbwähler zeigt das Kontrastverhältnis direkt am ausgewählten Element auf der echten Seite an, mit berechneten Stilen — kein externes Tool nötig. Einschränkung: nur ein Element gleichzeitig, was bei einer ganzen Palette mühsam wird, ohne Matrixmodus oder Link-Sharing.
Ein automatisiertes Audit direkt in der CI-Pipeline erkennt systematisch Kontrastregressionen bei jedem Pull Request und deckt Barrierefreiheit über Kontrast hinaus ab. Einschränkung: Es ersetzt nicht die vorgelagerte Phase der Palettengestaltung und kann False Negatives bei Text über einem Bild liefern.
Fazit
Farbkontrast bleibt der häufigste Barrierefreiheitsfehler im Web — und einer der am leichtesten zu behebenden, sobald er erkannt ist. AA (4,5:1) für normalen Text, 3:1 für großen Text und Nicht-Text-Elemente: drei Zahlen, die man sich merken sollte, bevor eine Palette freigegeben wird. Der FastMinify-Kontrastprüfer liefert das Ergebnis sofort, im Paarmodus oder im Matrixmodus für ein ganzes Design-System — ohne Ihre Markenfarben jemals an einen Server zu senden. Kombinieren Sie ihn mit einem axe-core-Audit in der CI, um Regressionen zu vermeiden, und mit dem restlichen Farbe-&-CSS-Hub, um eine konsistente Palette von Anfang bis Ende aufzubauen.
Verwandte Artikel

Meta-Beschreibung 155 Zeichen, Title ~60, Tweet 280: Wörter und Zeichen im Browser mit FastMinifys Wörterzähler — SEO-Presets, Lesezeit, 100 % lokal.

Deployment, Service, Ingress: YAML-Struktur vor `kubectl apply` prüfen — lokal im Browser validieren, ohne Cluster und kubectl.

FastMinify-Cluster, Suchintentionen und Workflows im Überblick — Minify, DevOps, API und SVG im Browser, ohne Konto.