Direct naar inhoud

De 50 WCAG 2.1 AA-criteria, in klare taal

WCAG 2.1 AA is de technische standaard achter de European Accessibility Act (EN 301 549) en bestaat uit 50 succescriteria. Geautomatiseerde checks testen er 3 volledig en 27 gedeeltelijk; 20 criteria vragen menselijke beoordeling — elk Wexlo-rapport benoemt dit per criterium. Hieronder de volledige lijst, met voor alles wat een machine niet volledig kan beoordelen een controle in klare taal.

1. Waarneembaar

CriteriumGeautomatiseerdDeels geautomatiseerdMenselijke controle
1.1.1 niet-tekstuele contentNiveau AControleer of elke betekenisvolle afbeelding een alt-tekst heeft die het doel overbrengt, en of decoratieve afbeeldingen een lege alt-tekst hebben — de AI-laag markeert duidelijk zwakke alt-tekst, maar een mens bevestigt of die bij de afbeelding past.NeeJaNee
1.2.1 louter audio en louter video (vooraf opgenomen)Niveau AControleer of louter-audio- en louter-video-content een tekstalternatief heeft dat hetzelfde verhaal vertelt — de scan somt de gevonden media per pagina op en of er een transcript-link in de buurt staat, maar een mens bevestigt of het alternatief gelijkwaardig is.NeeJaNee
1.2.2 ondertitels (vooraf opgenomen)Niveau AControleer of ondertitels kloppen en synchroon lopen — de automatische check ziet alleen óf er een HTML5-ondertitelspoor is; de media-inventaris somt ook ingesloten video's (YouTube/Vimeo) op zodat je elke op ondertiteling kunt controleren.NeeJaNee
1.2.3 audiodescriptie of media-alternatief (vooraf opgenomen)Niveau AControleer of vooraf opgenomen video audiodescriptie of een media-alternatief heeft voor informatie die alleen in beeld te zien is.NeeNeeJa
1.2.4 ondertitels (live)Niveau AAControleer of live video met spraak ondertiteld wordt.NeeNeeJa
1.2.5 audiodescriptie (vooraf opgenomen)Niveau AAControleer of vooraf opgenomen video audiodescriptie heeft waar beeld informatie draagt die niet in het geluid zit.NeeNeeJa
1.3.1 info en relatiesNiveau AControleer of visuele structuur (koppen, lijsten, tabellen, formuliergroepen) ook in de opmaakcode zit — de automatische check vangt alleen specifieke patronen.NeeJaNee
1.3.2 betekenisvolle volgordeNiveau AControleer of de leesvolgorde logisch blijft zonder opmaak, bijvoorbeeld met een screenreader of een gelineariseerde weergave.NeeNeeJa
1.3.3 zintuiglijke eigenschappenNiveau AControleer of instructies nooit alleen op vorm, grootte, positie, kleur of geluid leunen ("klik op de ronde knop rechts") — de AI-laag doet een eerste zeef over de paginatekst en een mens bevestigt de gemarkeerde gevallen.NeeJaNee
1.3.4 weergavestandNiveau AAControleer of de site in zowel staande als liggende weergavestand werkt — de automatische check vangt alleen harde vergrendelingen (CSS die content in één stand verbergt, of een script dat de stand vastzet); subtiel lay-outverlies vraagt nog een mens.NeeJaNee
1.3.5 doel van invoer bepalenNiveau AAControleer of velden die persoonsgegevens vragen het passende autocomplete-attribuut hebben — de automatische checks valideren de aanwezige attributen en markeren duidelijk persoonlijke velden (e-mail, telefoon, naam) die er geen hebben.NeeJaNee
1.4.1 gebruik van kleurNiveau AControleer of kleur nergens de enige drager van informatie is (links, grafieken, foutmeldingen) — de automatische checks dekken links in lopende tekst en formuliervelden waarvan de foutmelding alleen een kleur-/randwijziging is; grafieken en afbeeldingen vragen nog een mens.NeeJaNee
1.4.2 geluidsbedieningNiveau AControleer of automatisch startend geluid te pauzeren, stoppen of dempen is — de automatische check vangt alleen autoplay in de opmaak.NeeJaNee
1.4.3 contrast (minimum)Niveau AAJaNeeNee
1.4.4 tekst herschalenNiveau AAControleer of de pagina bruikbaar blijft op 200% browserzoom zonder verlies van content — de automatische checks signaleren opmaak die zoomen blokkeert en content die bij een 200%-zoomviewport afkapt of horizontaal scrollt.NeeJaNee
1.4.5 afbeeldingen van tekstNiveau AAControleer of tekst echte tekst is en geen afbeelding van tekst, met uitzondering van logo's.NeeNeeJa
1.4.10 reflowNiveau AAControleer of content op 320 CSS-pixels zonder tweedimensionaal scrollen herschikt — de automatische Wexlo-check signaleert overloop maar kan terechte uitzonderingen zoals datatabellen of kaarten niet beoordelen.NeeJaNee
1.4.11 contrast van niet-tekstuele contentNiveau AAControleer of interface-onderdelen en betekenisvolle graphics minstens 3:1 contrast hebben met aangrenzende kleuren.NeeNeeJa
1.4.12 tekstafstandNiveau AAControleer of er geen content of functionaliteit verloren gaat als gebruikers de tekstafstand vergroten — de automatische check detecteert alleen overloop na het toepassen van de afstandswaarden.NeeJaNee
1.4.13 content bij hover of focusNiveau AAControleer of content die bij hover of focus verschijnt te sluiten is, zelf aanwijsbaar is en zichtbaar blijft tot je die sluit.NeeNeeJa

2. Bedienbaar

CriteriumGeautomatiseerdDeels geautomatiseerdMenselijke controle
2.1.1 toetsenbordNiveau AControleer of elke functie met alleen het toetsenbord werkt — de automatische checks dekken focusbare frames, scrollgebieden en een tab-rondgang, niet de volledige bediening.NeeJaNee
2.1.2 geen toetsenbordvalNiveau AControleer of de toetsenbordfocus overal in én weer uit kan — de tab-rondgang van Wexlo signaleert duidelijke vallen; eigen widgets vragen nog een handmatige ronde.NeeJaNee
2.1.4 sneltoetsen met lettertekensNiveau AControleer of sneltoetsen van één teken uit te zetten of aan te passen zijn, of alleen werken als het betreffende element focus heeft.NeeNeeJa
2.2.1 timing aanpasbaarNiveau AControleer of elke tijdslimiet uit te zetten, aan te passen of te verlengen is — de automatische check vangt alleen meta-refresh.NeeJaNee
2.2.2 pauzeren, stoppen, verbergenNiveau AControleer of bewegende, knipperende of automatisch verversende content te pauzeren, stoppen of verbergen is — de automatische check vangt alleen verouderde blink/marquee-opmaak.NeeJaNee
2.3.1 drie flitsen of onder drempelwaardeNiveau AControleer of niets vaker dan drie keer per seconde flitst.NeeNeeJa
2.4.1 blokken omzeilenNiveau AControleer of de skiplink of landmark-structuur toetsenbordgebruikers echt langs terugkerende blokken laat springen — de automatische check verifieert alleen dat het mechanisme bestaat.NeeJaNee
2.4.2 paginatitelNiveau AControleer of elke paginatitel de pagina echt beschrijft — de automatische checks verifiëren dat er een titel is, markeren placeholder- en dubbele titels over pagina's heen, en de AI-laag markeert titels die niet-beschrijvend lezen.NeeJaNee
2.4.3 focusvolgordeNiveau AControleer of tabben door elke pagina een logische volgorde volgt die de betekenis bewaart.NeeNeeJa
2.4.4 linkdoel (in context)Niveau AControleer of het doel van elke link duidelijk is uit de linktekst of de directe context — de automatische check verifieert dat links een toegankelijke naam hebben, en de AI-laag markeert vage linktekst ("klik hier", "lees meer").NeeJaNee
2.4.5 meerdere manierenNiveau AAControleer of er meer dan één manier is om een pagina te vinden — de automatische check telt een sitemap, een zoekfunctie en navigatie, en markeert sites met minder dan twee; controleer of de manieren echt werken.NeeJaNee
2.4.6 koppen en labelsNiveau AAControleer of koppen en labels het onderwerp of doel beschrijven van wat volgt — de AI-laag markeert koppen die niet bij de tekst eronder passen en een mens bevestigt de gemarkeerde gevallen.NeeJaNee
2.4.7 focus zichtbaarNiveau AAControleer of elk interactief element een duidelijk zichtbare focusindicator toont — de tab-rondgang signaleert meetbaar ontbrekende indicatoren; subtiele gevallen vragen nog een menselijke blik.NeeJaNee
2.5.1 aanwijzergebarenNiveau AControleer of gebaren zoals vegen of knijpen een alternatief met één aanwijzer hebben (knoppen, tikken).NeeNeeJa
2.5.2 aanwijzerannuleringNiveau AControleer of aanwijzeracties pas bij loslaten uitvoeren, af te breken zijn of ongedaan te maken zijn.NeeNeeJa
2.5.3 label in naamNiveau AControleer of de toegankelijke naam van een bedieningselement de zichtbare tekst bevat (belangrijk voor spraakbesturing) — de automatische check markeert duidelijke afwijkingen; controleer bedieningselementen waarvan het zichtbare label een icoon of afbeelding is.NeeJaNee
2.5.4 bewegingsactiveringNiveau AControleer of functies op basis van beweging (schudden, kantelen) uit te zetten zijn en een gewoon alternatief hebben.NeeNeeJa

3. Begrijpelijk

CriteriumGeautomatiseerdDeels geautomatiseerdMenselijke controle
3.1.1 taal van de paginaNiveau AJaNeeNee
3.1.2 taal van onderdelenNiveau AAControleer of passages in een andere taal een eigen lang-attribuut hebben — de automatische checks valideren de aanwezige attributen en markeren tekstblokken die als een van Wexlo's vier talen lezen maar afwijken van de aangegeven paginataal en geen eigen lang hebben.NeeJaNee
3.2.1 bij focusNiveau AControleer of alleen focussen op een element nooit een contextwijziging veroorzaakt, zoals navigatie of een pop-up.NeeNeeJa
3.2.2 bij invoerNiveau AControleer of het wijzigen van een formulierveld (optie kiezen, vakje aanvinken) nooit onverwacht de context verandert, tenzij dat vooraf gemeld wordt.NeeNeeJa
3.2.3 consistente navigatieNiveau AAControleer of navigatie overal op de site in dezelfde relatieve volgorde staat — de paginavergelijking van Wexlo dekt alleen de gescande pagina's.NeeJaNee
3.2.4 consistente identificatieNiveau AAControleer of onderdelen met dezelfde functie overal consistent benoemd en vormgegeven zijn.NeeNeeJa
3.3.1 foutidentificatieNiveau AControleer of elke invoerfout in tekst bij het veld beschreven wordt — de formuliercheck van Wexlo activeert alleen client-side validatie en kan server-side flows missen.NeeJaNee
3.3.2 labels of instructiesNiveau AControleer of elk veld een zichtbaar label of instructie heeft die zegt wat je moet invullen — de automatische check vangt alleen specifieke labelpatronen.NeeJaNee
3.3.3 foutsuggestieNiveau AAControleer of foutmeldingen een oplossing aanreiken als die bekend is (verwacht formaat, voorbeeldwaarde).NeeNeeJa
3.3.4 foutpreventie (wettelijk, financieel, gegevens)Niveau AAControleer of juridische of financiële invoer vóór definitieve verzending te controleren, corrigeren of terug te draaien is.NeeNeeJa

4. Robuust

CriteriumGeautomatiseerdDeels geautomatiseerdMenselijke controle
4.1.1 parsenNiveau AGeen actie nodig: voor HTML geldt dit criterium volgens de W3C-errata bij WCAG 2.1 als vervuld.NeeNeeJa
4.1.2 naam, rol, waardeNiveau AJaNeeNee
4.1.3 statusberichtenNiveau AAControleer of statusupdates (toegevoegd aan winkelwagen, opgeslagen, filterresultaten) via een live region aan screenreaders gemeld worden.NeeNeeJa

Zien waar jouw site staat? Draai een gratis scan van één pagina.