Contrast checker: kleurcontrast controleren (WCAG 2.2)

Vul een tekstkleur en een achtergrondkleur in of kies ze. De checker berekent de relatieve luminantie van beide kleuren en de contrastverhouding precies zoals het W3C ze definieert en laat zien aan welke succescriteria van WCAG 2.2 je voldoet. Is het contrast te laag, dan stelt hij de dichtstbijzijnde tekstkleur voor die wel voldoet.

HEX, rgb(), hsl() … – ook met transparantie
Je invoer wordt alleen in deze browser opgeslagen.

Voorbeeld

Normale tekst: zo leest een alinea met een lettergrootte van 16 pixels.

Grote tekst vanaf 24 px

Vette tekst vanaf 18,67 px

Knop

Voorbeeld in jouw kleuren: 16 px normaal, 24 px normaal en 18,67 px vet (= 14 pt vet, grote tekst), daarna een rand en een pictogram als UI-voorbeeld.

Resultaat

Contrastverhouding
4,48 : 1
Oordeel WCAG 2.2
CriteriumMinimumResultaat
Normale tekst – AA (SC 1.4.3)4,5 : 1✗ voldoet niet
Normale tekst – AAA (SC 1.4.6)7 : 1✗ voldoet niet
Grote tekst – AA (SC 1.4.3)3 : 1✓ voldoet
Grote tekst – AAA (SC 1.4.6)4,5 : 1✗ voldoet niet
UI-componenten en afbeeldingen – AA (SC 1.4.11)3 : 1✓ voldoet
Dichtstbijzijnde tekstkleur voor AA (4,5:1)
#767676 (4,54 : 1)
Dichtstbijzijnde tekstkleur voor AAA (7:1)
#595959 (7,00 : 1)
Relatieve luminantie, tekstkleur
0,1845 (#777777)
Relatieve luminantie, achtergrond
1,0000 (#FFFFFF)

Zo wordt het berekend

Zo wordt het contrast berekend

WCAG 2.2 definieert de contrastverhouding als (L1 + 0,05) ÷ (L2 + 0,05), waarbij L1 de relatieve luminantie van de lichtste kleur is en L2 die van de donkerste. De uitkomst loopt van 1:1 (dezelfde kleur) tot 21:1 (zwart op wit).

De checker berekent de relatieve luminantie precies zoals het W3C die definieert: elk sRGB-kanaal wordt door 255 gedeeld en gelineariseerd – waarden tot 0,04045 worden door 12,92 gedeeld, hogere worden ((waarde + 0,055) ÷ 1,055)2,4. Daarna L = 0,2126 × R + 0,7152 × G + 0,0722 × B.

Voorbeeld #777777 op wit: 0x77 = 119, 119 ÷ 255 = 0,4667 → ((0,4667 + 0,055) ÷ 1,055)2,4 = 0,1845. Omdat de drie kanalen gelijk zijn, is L = 0,1845. Wit heeft L = 1. Contrast = (1 + 0,05) ÷ (0,1845 + 0,05) = 4,48:1. Genoeg voor grote tekst (3:1), maar net te weinig voor normale tekst (4,5:1). De voorgestelde kleur #767676 haalt 4,54:1.

De eisen van WCAG 2.2

SuccescriteriumNiveauNormale tekstGrote tekst
1.4.3 Contrast (minimum)AA4,5:13:1
1.4.6 Contrast (versterkt)AAA7:14,5:1
1.4.11 Contrast van niet-tekstuele content (UI-componenten, afbeeldingen)AA3:1

Volgens WCAG is grote tekst minstens 18 punt, of minstens 14 punt vet – in de browser ongeveer 24 px en 18,67 px. Uitzonderingen zijn onder meer logo’s, puur decoratieve tekst en uitgeschakelde bedieningselementen.

Geen afronding

WCAG vergelijkt de exacte waarde: 4,499:1 voldoet niet aan 4,5:1. De checker beoordeelt daarom de onafgeronde verhouding en toont twee decimalen; waar afronden een grens zou lijken te halen, kapt hij af (4,49 in plaats van 4,50).

Transparante kleuren

Kleuren met een alfawaarde (bijv. rgba(0, 0, 0, 0.6) of #00000099) worden over elkaar gelegd zoals een browser ze tekent: een transparante achtergrond op wit, een transparante tekstkleur op de achtergrond. Ligt je pagina op een andere ondergrond, vul die effen kleur dan in als achtergrond.

Veelgestelde vragen

Welke contrastverhouding is nodig voor toegankelijkheid?

Minstens 4,5:1 voor normale tekst (WCAG-niveau AA, SC 1.4.3) en 3:1 voor grote tekst. Het strengere niveau AAA vraagt 7:1 en 4,5:1. Bedieningselementen zoals randen van invoervelden en pictogrammen hebben 3:1 nodig (SC 1.4.11).

Welke grijstinten op wit halen AA nog?

#767676 is het lichtste grijs met minstens 4,5:1 op wit (4,54:1). #777777 blijft er met 4,48:1 net onder.

Hoe vindt de checker de voorgestelde kleur?

Hij houdt tint en verzadiging van je tekstkleur gelijk en verandert alleen de HSL-lichtheid in kleine stappen, lichter en donkerder. Hij stelt de kleinste wijziging voor waarvan de afgeronde kleur het doel zeker haalt.

Welke regels verwijzen naar deze contrastwaarden?

In de EU verwijst de European Accessibility Act (richtlijn (EU) 2019/882) via de geharmoniseerde norm EN 301 549 naar WCAG 2.1 niveau AA. De contrastcriteria zijn in WCAG 2.0, 2.1 en 2.2 gelijk: 4,5:1 voor tekst, 3:1 voor grote tekst – plus 3:1 voor UI-componenten vanaf WCAG 2.1.

Bronnen en wettelijke basis

Bijgewerkt op:

Vergelijkbare tools