Rapport:
Audit digitale toegankelijkheid website Winkel van Kadaster
- Onderzoeker
- Julia, Swink; Sander, Swink
- Datum
- 13 maart 2026
- Opdrachtgever
- Kadaster
Samenvatting onderzoeksresultaat
De website Kadaster Winkel voldoet nog niet aan WCAG 2.1 niveau AA. Er zijn 19 van de 50 succescriteria waar één of meer fouten zijn gevonden. In dit document is vastgelegd in hoeverre de website voldoet aan de toegankelijkheidseisen die vastgelegd zijn in WCAG, de Web Content Accessibility Guidelines.
De website cms2.acceptatie.kadaster.nl/winkel is onderzocht tussen 1 en 11 maart 2026. Het onderzoek is uitgevoerd aan de hand van de evaluatiemethode WCAG-EM. Doel van dit rapport is om de vervolgstappen te bepalen om tot een toegankelijke website te komen.
De website cms2.acceptatie.kadaster.nl/winkel voldoet nog niet aan WCAG 2.1 niveau AA. In dit document is vastgelegd in hoeverre de website voldoet aan de toegankelijkheidseisen die vastgelegd zijn in WCAG, de Web Content Accessibility Guidelines.
Het volgende viel op:
- Beide PDF-documenten missen volledig de tag-structuur. Hierdoor is de volledige inhoud ontoegankelijk voor schermlezers, en kunnen er na reparatie nog meer problemen opduiken. Dit blokkeert de toegang tot essentieel productmateriaal.
- Meerdere dialoogvensters (feedback, productinfo, prijzen) hebben geen aria-label en houden de toetsenbordfocus niet vast. Een blinde bezoeker weet niet wat het dialoogvenster is en kan er per ongeluk uit navigeren. Dit raakt meerdere pagina's en meerdere interacties.
- Het zoekveld op de Winkel-pagina ("Adres of postcode + huisnummer") heeft een stapeling van ARIA-problemen. Dit raakt zowel de adres-zoekfunctie als de kadastrale aanduiding-zoekfunctie, de twee primaire ingangen van de webshop. Een blinde bezoeker kan hierdoor moeilijk een product vinden en bestellen.
Het onderzoek richt zich specifiek op de toegankelijkheid van de website voor mensen met een functiebeperking, zoals mensen die blind, doof, laaggeletterd zijn of andere functieproblemen hebben. Voor hen is het van belang dat de website technisch en inhoudelijk zo is ingericht dat de site voor hen goed bruikbaar is. Een website optimaliseren voor toegankelijkheid heeft meer voordelen; het maakt de website beter bruikbaar voor iedereen (bijvoorbeeld ook voor mensen die op hun mobieltje kijken in een zonnige omgeving) en het maakt de site beter vindbaar in zoekmachines.
Scope van de evaluatie
| Naam website | Kadaster Winkel |
|---|---|
| Scope van de website |
Binnen de scope van het onderzoek valt:
|
| Conformiteitsdoel | WCAG 2.1 niveau AA |
| Basisniveau van toegankelijkheid ondersteund | Gangbare browsers en hulpapparatuur. |
Overzicht toetsresultaat
| Principe | Voldoende | Onvoldoende | Onbekend |
|---|---|---|---|
| 1 Waarneembaar | 12 | 8 | 0 |
| 2 Bedienbaar | 12 | 5 | 0 |
| 3 Begrijpelijk | 6 | 4 | 0 |
| 4 Robuust | 1 | 2 | 0 |
| Totaal | 31 | 19 | 0 |
Leeswijzer
Dit onderzoek is een momentopname. De website kan inmiddels veranderd zijn. De gevonden problemen zijn slechts voorbeelden. Ga daarom bij elk probleem de gehele website na of dit ook op andere plaatsen voorkomt. Dit onderzoek is slechts een steekproef van een aantal pagina's. Er zijn zo veel mogelijk verschillende type pagina's opgenomen in de sample om zo een goede indruk te krijgen van de toegankelijkheid. Let op! Bij het aanbrengen van verbeteringen of wijzigingen op de website/app kunnen nieuwe problemen ontstaan. Succescriteria gemarkeerd met "Niet aanwezig" worden automatisch goedgekeurd. Succescriteria gemarkeerd met "Onbekend" worden niet goedgekeurd.
Uitgebreide toetsresultaten
1. Waarneembaar
1.1 Tekstalternatieven
1.1.1 Niet-tekstuele content (Niveau A)
Alle niet-tekstuele content die aan de gebruiker wordt gepresenteerd, heeft een tekstalternatief dat een gelijkwaardig doel dient, behalve voor de hierna vermelde situaties.
- Bedieningselementen, invoer: Als niet-tekstuele content een bedieningselement is of gebruikersinvoer accepteert, dan heeft ze een naam die het doel ervan beschrijft. (We verwijzen naar succescriterium 4.1.2 voor aanvullende eisen over bedieningselementen en content die gebruikersinvoer accepteren.)
- Op tijd gebaseerde media: Als niet-tekstuele content op tijd gebaseerde media is, dan leveren tekstalternatieven ten minste een beschrijving van de niet-tekstuele content. (We verwijzen naar Richtlijn 1.2 voor aanvullende eisen ten aanzien van media.)
- Test: Als niet-tekstuele content een test of oefening is die, als ze door middel van tekst gepresenteerd wordt onjuist zou zijn, dan leveren tekstalternatieven ten minste een beschrijving van de niet-tekstuele content.
- Zintuiglijk: Als niet-tekstuele content primair is bedoeld om een specifieke zintuiglijke ervaring te creëren, dan leveren tekstalternatieven ten minste een beschrijving van de niet-tekstuele content.
- CAPTCHA: Als het doel van niet-tekstuele content is om te bevestigen dat content wordt gebruikt door een persoon in plaats van een computer, dan worden tekstalternatieven geleverd die het doel van de niet-tekstuele content identificeren en beschrijven. En er worden alternatieve vormen van CAPTCHA aangeboden gebruikmakend van uitvoermodes voor verschillende soorten van zintuiglijke perceptie om tegemoet te komen aan verschillende functiebeperkingen.
- Decoratie, opmaak, onzichtbaar: Als niet-tekstuele content puur decoratief is, slechts voor visuele opmaak wordt gebruikt, of niet aan gebruikers wordt gerepresenteerd, dan wordt het op zo'n manier geïmplementeerd dat het genegeerd kan worden door hulptechnologie.
Informatie over succescriterium 1.1.1 Niet-tekstuele content
Uitkomst: Onvoldoende
Bevindingen: In de header van de website bevatten de hoofdmenulinks zoals "Situaties" submenu's. Deze links gebruiken pijliconen om aan te geven of de secties open of gesloten zijn. Hoewel de positie van het icoon deze status visueel overbrengt, is deze niet altijd programmatisch toegankelijk voor schermlezers. Er ontbreekt een tekstalternatief. Hoewel het aria-expanded-attribuut wordt gebruikt, wordt het pas aan de link toegevoegd nadat het submenu is geopend. Hierdoor kan de open- of dichtstatus van het submenu voor de eerste interactie en in de initiële staat niet programmatisch worden bepaald. Als het draaien of veranderen van een afbeelding iets betekent, moet die betekenis ook toegankelijk zijn voor blinde bezoekers. Een pijltje dat naar beneden wijst kan aangeven dat een sectie met inhoud nog dicht is, en een pijltje omhoog dat de inhoud zichtbaar is. Zorg ervoor dat schermlezers dit ook begrijpen. Hiervoor moet het aria-expanded-attribuut altijd aanwezig zijn en de huidige status nauwkeurig weergeven. Zie ook succescriterium 4.1.2.
Zie pagina https://www.cms2.acceptatie.kadaster.nl/winkel.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met een "i"-icoon. Deze knop opent aanvullende content met een afbeelding. Deze aanvullende content bevat een afbeelding zonder alt-attribuut. Een img-element moet altijd een alt-attribuut hebben. Alleen bij een decoratieve afbeelding die geen betekenis overdraagt, moet dit attribuut leeg blijven (alt=""). Bij een informatieve afbeelding moet het alt-attribuut een duidelijke beschrijving van de afbeelding bevatten. Voeg het alt-attribuut toe aan het img-element. Bij een decoratieve afbeelding blijft de waarde leeg, bij een informatieve afbeelding wordt een duidelijke alternatieve tekst toegevoegd.
Het logo bovenaan de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C toont de volledige tekst "BUCKAROO", maar de alt-tekst is "Webwinkel ACC". In het tekstalternatief staat dus niet alle tekst die in het logo te zien is. Dit moet wel. Zo weten bezoekers die de afbeelding niet kunnen zien ook precies wat er staat.
Verander het tekstalternatief zodat de volledige tekst van het logo erin staat: "BUCKAROO".
1.2 Op tijd gebaseerde media
1.2.1 Louter-geluid en louter-videobeeld (vooraf opgenomen) (Niveau A)
Voor media met vooraf opgenomen louter-geluid en vooraf opgenomen louter-videobeeld is het volgende waar, behalve als de audio of video een media-alternatief voor tekst is en duidelijk als zodanig is gelabeld:
- Vooraf opgenomen louter-geluid: Er wordt een alternatief geleverd voor op tijd gebaseerde media dat equivalente informatie geeft voor vooraf opgenomen louter-geluid content.
- Vooraf opgenomen louter-videobeeld: Er wordt een alternatief geleverd voor op tijd gebaseerde media of een geluidsspoor dat equivalente informatie geeft voor vooraf opgenomen louter-videobeeld content.
Informatie over succescriterium 1.2.1 Louter-geluid en louter-videobeeld (vooraf opgenomen)
Uitkomst: Niet aanwezig
1.2.2 Ondertitels voor doven en slechthorenden (vooraf opgenomen) (Niveau A)
Er worden ondertitels voor doven en slechthorenden geleverd voor alle vooraf opgenomen audiocontent in gesynchroniseerde media, behalve als het mediabestand een media-alternatief voor tekst is en duidelijk als zodanig is gelabeld.
Informatie over succescriterium 1.2.2 Ondertitels voor doven en slechthorenden (vooraf opgenomen)
Uitkomst: Niet aanwezig
1.2.3 Audiodescriptie of media-alternatief (vooraf opgenomen) (Niveau A)
Er wordt een alternatief geleverd voor op tijd gebaseerde media of audiodescriptie van de vooraf opgenomen videocontent geleverd voor gesynchroniseerde media, behalve als het mediabestand een media-alternatief voor tekst is en duidelijk als zodanig is gelabeld.
Informatie over succescriterium 1.2.3 Audiodescriptie of media-alternatief (vooraf opgenomen)
Uitkomst: Niet aanwezig
1.2.4 Ondertitels voor doven en slechthorenden (live) (Niveau AA)
Er worden ondertitels voor doven en slechthorenden geleverd voor alle live audiocontent in gesynchroniseerde media.
Informatie over succescriterium 1.2.4 Ondertitels voor doven en slechthorenden (live)
Uitkomst: Niet aanwezig
1.2.5 Audiodescriptie (vooraf opgenomen) (Niveau AA)
Er wordt een audiodescriptie geleverd voor alle vooraf opgenomen videocontent in gesynchroniseerde media.
Informatie over succescriterium 1.2.5 Audiodescriptie (vooraf opgenomen)
Uitkomst: Niet aanwezig
1.3 Aanpasbaar
1.3.1 Info en relaties (Niveau A)
Informatie, structuur en relaties overgebracht door presentatie kunnen door software bepaald worden of zijn beschikbaar in tekst.
Informatie over succescriterium 1.3.1 Info en relaties
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel, bij het invoeren van een adres in het zoekveld, verschijnt de kop "Geselecteerd perceel:", maar het kop-element ontbreekt. Het strong-element wordt gebruikt om het op een kop te laten lijken. Het element strong is niet bedoeld om koppen mee te markeren. Dit moet altijd gedaan worden met een kop-element, zoals h2. Koppen zijn bedoeld om een tekst te structureren. Alleen als deze teksten als kop worden gemarkeerd met een kop-element, begrijpt hulpsoftware die betekenis.
Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkelwagen staat een tabel waarin tabelkoppen ook als h3-koppen zijn gemarkeerd. Tabelkoppen (th-elementen) mogen niet tegelijkertijd gemarkeerd zijn als heading-elementen (h1-h6). Dit zorgt voor verwarring bij schermlezers en andere hulptechnologieën. Tabelkoppen hebben een andere functie dan koppen in de inhoud: zij labelen kolommen of rijen binnen de tabelstructuur. Door ze dubbel te markeren ontstaat onduidelijkheid over de documentstructuur en wordt de navigatie voor gebruikers van hulptechnologieën bemoeilijkt. Gebruik voor tabelkoppen alleen th-elementen met eventueel scope-attributen, en reserveer h-elementen voor de algemene inhoudsstructuur.
De pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C bevat een formulier. Het label-element met "Card number:" is niet expliciet gekoppeld aan het bijbehorende invoerveld. Het label-element verwijst naar een onjuist input-element. De label-elementen moeten gekoppeld worden aan hun bijbehorende invoervelden door het for-attribuut op het label-element te gebruiken. In dit attribuut komt het id van het invoerveld waar het label bij hoort. Door deze koppeling lezen schermlezers het label voor als een bezoeker direct naar het invoerveld navigeert.
Hetzelfde probleem doet zich voor bij de "Expiration date:"-select-elementen. Let op: één label kan niet naar twee select-elementen verwijzen. Voeg aparte labels toe voor elk select-element.
De pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C bevat een formulier. Er is een groep select-elementen onder het label "Expiration date", maar dit label is niet programmatisch gekoppeld aan de bijbehorende groep. Hierdoor weten bezoekers die een schermlezer gebruiken niet dat er een relatie is tussen de groepslabel en de bijbehorende groep. Zorg dat de groepslabel in de code gekoppeld is aan de groep. Dit kan bereikt worden met fieldset- en legend-elementen.
Het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Eigendomsinformatie%20productvoorbeeld/94853973-7b55-ea04-25a4-18b8a383143e mist structuurcodes, waardoor de content niet toegankelijk is voor schermlezers. Bovendien kunnen wij de PDF hierdoor niet volledig onderzoeken. Het gaat om alle succescriteria die met de PDF-codelaag te maken hebben, zoals semantische koppen en alternatieve teksten bij afbeeldingen. Als dit wordt opgelost, is het dus mogelijk dat er nieuwe toegankelijkheidsproblemen ontstaan die nu nog niet aan het licht zijn gekomen.
Hetzelfde probleem doet zich voor in het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f.
1.3.2 Betekenisvolle volgorde (Niveau A)
Als de volgorde waarin content wordt gepresenteerd van invloed is op zijn betekenis, kan een correcte leesvolgorde door software bepaald worden.
Informatie over succescriterium 1.3.2 Betekenisvolle volgorde
Uitkomst: Voldoende
1.3.3 Zintuiglijke eigenschappen (Niveau A)
Instructies die geleverd worden om content te begrijpen en te bedienen zijn niet alleen afhankelijk van zintuiglijke eigenschappen van componenten zoals vorm, kleur, omvang, visuele locatie, oriëntatie of geluid.
Informatie over succescriterium 1.3.3 Zintuiglijke eigenschappen
Uitkomst: Voldoende
1.3.4 Weergavestand (Niveau AA)
De content beperkt de weergave en bediening niet tot een enkele presentatie-oriëntatie, zoals staand of liggend, tenzij een specifieke presentatie-oriëntatie essentieel is.
Informatie over succescriterium 1.3.4 Weergavestand
Uitkomst: Voldoende
1.3.5 Identificeer het doel van de input (Niveau AA)
Het doel van elk invoerveld waarmee informatie van de gebruiker wordt verzameld, kan door software bepaald worden wanneer:
- Het invoerveld een doel dient dat is geïdentificeerd in de paragraaf Inputdoelen voor Componenten van de Gebruikersinterface; en
- De content wordt geïmplementeerd met behulp van technologieën die ondersteuning bieden bij het identificeren van de verwachte betekenis van formulier-invoergegevens.
Informatie over succescriterium 1.3.5 Identificeer het doel van de input
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C mist een formulier met invoervelden voor persoonlijke informatie (bijvoorbeeld Name on card, Card number en andere) het autocomplete-attribuut. Invoervelden voor persoonlijke informatie zoals achternaam, e-mailadres en telefoonnummer moeten het autocomplete-attribuut met de juiste waarde hebben. Hierdoor kunnen browsers en hulpsoftware helpen bij het invoeren. Bijvoorbeeld door de velden al automatisch in te vullen. Gebruik het autocomplete-attribuut voor alle velden waar persoonlijke informatie in moet worden gevuld. Op deze pagina staat meer informatie over autocomplete en welke waardes verplicht gebruikt moeten worden: https://www.w3.org/Translations/WCAG22-nl/#input-purposes.
1.4 Onderscheidbaar
1.4.1 Gebruik van kleur (Niveau A)
Kleur wordt niet als het enige visuele middel gebruikt om informatie over te brengen, een actie aan te geven, tot een reactie op te roepen of een visueel element te onderscheiden.
Informatie over succescriterium 1.4.1 Gebruik van kleur
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C bestaat de foutmelding in het formulier uit het veranderen van de randkleur van de invoervelden. Dit is niet toegankelijk voor bezoekers die de kleur helemaal niet kunnen zien of die kleurenblind zijn. Zorg ervoor dat informatie niet alleen met kleur wordt overgedragen. Gebruik daarnaast nog andere manieren om fouten of ontbrekende informatie door te geven, bijvoorbeeld met tekst of iconen.
1.4.2 Geluidsbediening (Niveau A)
Als een geluidsweergave op een webpagina automatisch meer dan 3 seconden speelt, is er of een mechanisme beschikbaar om de geluidsweergave te pauzeren of te stoppen, of er is een mechanisme beschikbaar om het geluidsvolume onafhankelijk van het overall systeemvolume te regelen.
Informatie over succescriterium 1.4.2 Geluidsbediening
Uitkomst: Voldoende
1.4.3 Contrast (minimum) (Niveau AA)
De visuele weergave van tekst en afbeeldingen van tekst heeft een contrastverhouding van ten minste 4,5:1, behalve in de volgende gevallen:
- Grote tekst: Grote tekst en afbeeldingen van grote tekst hebben een contrastverhouding van ten minste 3:1;
- Incidenteel: Tekst of afbeeldingen van tekst die deel zijn van een inactieve component van de gebruikersinterface, die puur decoratief zijn, die voor niemand zichtbaar zijn, of die onderdeel zijn van een afbeelding die significant andere visuele content bevat, hebben geen contrasteis.
- Woordmerken: Tekst die onderdeel is van een logo of merknaam heeft geen contrasteis.
Informatie over succescriterium 1.4.3 Contrast (minimum)
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met witte tekst op een blauwe (HEX #2A98FF) achtergrond. De kleurcontrastverhouding is te laag: 2,9:1. Omdat deze tekst kleiner is dan 24px en niet vetgedrukt, moet het contrast minimaal 4,5:1 zijn.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met een "i"-icoon. Deze knop opent aanvullende content met witte tekst op een grijze (HEX #808080) achtergrond, bijvoorbeeld "What is the CVC code?". De kleurcontrastverhouding is te laag: 3,9:1. Omdat deze tekst kleiner is dan 24px en niet vetgedrukt, moet het contrast minimaal 4,5:1 zijn.
In het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Eigendomsinformatie%20productvoorbeeld/94853973-7b55-ea04-25a4-18b8a383143e staan witte tekstcijfers op een blauwe (HEX #00889E) achtergrond, bijvoorbeeld "1", "2" enzovoort. De kleurcontrastverhouding is te laag: 4,2:1. Zorg dat het contrast minimaal 4,5:1 is.
Hetzelfde probleem doet zich voor in het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f.
In het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Eigendomsinformatie%20productvoorbeeld/94853973-7b55-ea04-25a4-18b8a383143e staat grijze (HEX #B2B2B2) tekst op een witte achtergrond, bijvoorbeeld "BETREFT". De kleurcontrastverhouding is te laag: 2,1:1. Zorg dat het contrast minimaal 4,5:1 is.
Hetzelfde probleem doet zich voor in het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f.
1.4.4 Herschalen van tekst (Niveau AA)
Behalve voor ondertitels voor doven en slechthorenden en afbeeldingen van tekst, kan tekst zonder hulptechnologie tot 200% geschaald worden zonder verlies van content of functionaliteit.
Informatie over succescriterium 1.4.4 Herschalen van tekst
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staan in het head-element van de HTML-code maximum-scale=1 en user-scalable=0. Deze code zorgt ervoor dat een bezoeker niet kan inzoomen. Verwijder deze code.
1.4.5 Afbeeldingen van tekst (Niveau AA)
Als de gebruikte technologieën de visuele weergave tot stand kunnen brengen, wordt tekst gebruikt in plaats van afbeeldingen van tekst om informatie over te brengen, behalve in de volgende gevallen:
- Aanpasbaar: De afbeelding van tekst kan visueel aangepast worden aan de eisen van de gebruiker;
- Essentieel: Een specifieke weergave van tekst is essentieel voor de informatie die wordt overgebracht.
Informatie over succescriterium 1.4.5 Afbeeldingen van tekst
Uitkomst: Voldoende
1.4.10 Reflow (Niveau AA)
Content kan zonder verlies van informatie of functionaliteit en zonder te moeten scrollen in twee dimensies, worden weergegeven voor:
- Verticaal scrollbare content met een breedte gelijkwaardig aan 320 CSS-pixels;
- Horizontaal scrollbare content met een hoogte gelijkwaardig aan 256 CSS-pixels.
Met uitzondering van delen van de content die voor het gebruik of de betekenis een tweedimensionale lay-out vereisen.
Informatie over succescriterium 1.4.10 Reflow
Uitkomst: Onvoldoende
Bevindingen: Wanneer de pagina's van de website, zoals https://www.cms2.acceptatie.kadaster.nl/winkel, worden bekeken op een schermresolutie van 1280 bij 1024 pixels en ingezoomd tot 400%, is de knop met de tekst "Feedback" die een feedbackdialoogvenster opent niet zichtbaar en bedienbaar. Zorg dat alles nog werkt en leesbaar is als je inzoomt tot 400% op een scherm van 1280 bij 1024 pixels.
Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel, na het invoeren van een adres in het zoekveld, verschijnen producten met prijsknoppen die een dialoogvenster openen. In dit dialoogvenster, wanneer de pagina wordt bekeken op een schermresolutie van 1280 bij 1024 pixels en ingezoomd tot 400%, bedekt de "x"-knop de tekst ernaast, bijvoorbeeld "Het product is toegevoegd aan uw winkelwagen.". Zorg dat alles nog werkt en leesbaar is als je inzoomt tot 400% op een scherm van 1280 bij 1024 pixels.
1.4.11 Contrast van niet-tekstuele content (Niveau AA)
De visuele weergave van het volgende heeft een contrastverhouding van ten minste 3:1 ten opzichte van aangrenzende kleuren:
- Componenten van de gebruikersinterface: Visuele informatie die vereist is om componenten van de gebruikersinterface en statussen te identificeren, met uitzondering van inactieve componenten of componenten waarvan de weergave van de component wordt bepaald door de user agent en niet wordt aangepast door de auteur;
- Grafische objecten: Delen van afbeeldingen die vereist zijn om de content te begrijpen, behalve wanneer een specifieke weergave van afbeeldingen essentieel is voor de informatie die wordt overgebracht.
Informatie over succescriterium 1.4.11 Contrast van niet-tekstuele content
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel, na het invoeren van een adres in het zoekveld, verschijnen knoppen met productnamen, bijvoorbeeld "Eigendomsinformatie". Wanneer op deze knoppen wordt geklikt, opent een modaal dialoogvenster met een sluitknop "x". De toetsenbordfocus op deze knop is lichtblauw (HEX #67BCDF) op een witte achtergrond. De contrastverhouding tussen deze kleuren is 2,1:1, wat lager is dan het vereiste minimum van 3,0:1.
Hetzelfde probleem doet zich voor in de dialoogvensters die openen bij het klikken op knoppen met prijzen, bijvoorbeeld "€ 3.70".
Op deze website wordt niet de standaard focusindicator gebruikt, maar een aangepaste versie met een rand. Die aanpassing is met CSS toegevoegd. Voor de standaard focusindicator zijn geen contrasteisen in WCAG; die wordt dus altijd goedgekeurd voor dit succescriterium. Bezoekers kunnen een standaard focusindicator namelijk zelf aanpassen, naar hun eigen wensen. Maar dat kan niet meer als de focusindicator met CSS is aangepast. Daarom gelden de contrasteisen in dat geval wél. Dit moet ten minste 3,0:1 zijn.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een formulier. De randen van de invoervelden zijn grijs (HEX #CCCCCC) op een lichtgrijze (HEX #F5F5F5) achtergrond. De contrastverhouding is 1,5:1. De randen van interactieve elementen zoals invoervelden moeten minimaal een contrast van 3,0:1 hebben met de achtergrond.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met een grijs (HEX \#A3A3A3) "i"-icoon op een lichtgrijze (HEX #F5F5F5) achtergrond. De contrastverhouding is 2,3:1. Wanneer het contrast van een icoon op een knop lager is dan 3,0:1, is het icoon moeilijk waarneembaar voor bezoekers met een visuele beperking. Dit is met name een probleem wanneer het icoon de enige aanduiding is van de functie van de knop en er geen begeleidende tekst aanwezig is. Volgens dit succescriterium moeten niet-tekstuele elementen die essentieel zijn voor het begrip van de interface een minimaal contrast van 3,0:1 hebben ten opzichte van de achtergrond.
1.4.12 Tekstafstand (Niveau AA)
Bij content die wordt geïmplementeerd met opmaaktalen die de volgende stijleigenschappen voor tekst ondersteunen, is er geen sprake van verlies van content of functionaliteit door het instellen van alle volgende, en door het niet wijzigen van andere stijleigenschappen:
- Regelhoogte (regelafstand) naar minstens 1,5 keer de lettergrootte;
- Afstand tussen alinea's naar minstens 2 keer de lettergrootte;
- Letterafstand (spatieren van letters) naar minstens 0,12 keer de lettergrootte;
- Spatieren van woorden naar minstens 0,16 keer de lettergrootte.
Uitzondering: Menselijke talen en scripts die geen gebruik maken van een of meer van deze stijleigenschappen voor tekst in schriftelijke tekst, kunnen voldoen aan de eisen door alleen gebruik te maken van de eigenschappen die bestaan voor de betreffende combinatie van taal en script.
Informatie over succescriterium 1.4.12 Tekstafstand
Uitkomst: Voldoende
1.4.13 Content bij hover of focus (Niveau AA)
Wanneer aanvullende content zichtbaar wordt en daarna weer verborgen, door het gebruik van hover met de aanwijzer of focus met het toetsenbord, gelden de volgende zaken:
- Sluiten: Er is een mechanisme beschikbaar waarmee de aanvullende content kan worden gesloten zonder de aanwijzer hover of de toetsenbordfocus te verplaatsen, tenzij de aanvullende content een invoerfout communiceert of andere content niet verbergt of vervangt;
- Aanwijsbaar: Wanneer een aanwijzer hover aanvullende content kan activeren, dan kan de aanwijzer over de aanvullende content worden bewogen zonder dat deze verdwijnt;
- Aanhouden: De aanvullende content blijft zichtbaar totdat de oorzaak voor de hover of focus is verwijderd, de gebruiker de content sluit of de informatie niet langer geldig is.
Uitzondering: De visuele weergave van de aanvullende content wordt beheerd door de user agent en wordt niet aangepast door de auteur.
Informatie over succescriterium 1.4.13 Content bij hover of focus
Uitkomst: Niet aanwezig
2. Bedienbaar
2.1 Toetsenbordtoegankelijk
2.1.1 Toetsenbord (Niveau A)
Alle functionaliteit van de content is bedienbaar via een toetsenbordinterface zonder dat afzonderlijke toetsaanslagen aan tijd gebonden zijn, behalve als de onderliggende functie een invoer vereist die afhangt van het pad dat de gebruiker aflegt en niet alleen van de eindpunten.
Informatie over succescriterium 2.1.1 Toetsenbord
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met een "i"-icoon. Deze knop is niet toegankelijk met het toetsenbord. Zorg dat de knop zowel met de spatiebalk als de Enter-toets bediend kan worden.
2.1.2 Geen toetsenbordval (Niveau A)
Als de toetsenbordfocus met de toetsenbordinterface verplaatst kan worden naar een component van de pagina, dan kan de focus ook met alleen de toetsenbordinterface weer van dat component weg worden bewogen. En, als er meer nodig is dan de standaard pijl- of tabtoetsen of andere standaard methoden om de focus te verplaatsen, dan wordt de gebruiker geïnformeerd over de manier waarop de focus kan worden verplaatst.
Informatie over succescriterium 2.1.2 Geen toetsenbordval
Uitkomst: Voldoende
2.1.4 Enkel teken sneltoets (Niveau A)
Wanneer een sneltoets in content wordt geïmplementeerd door alleen letters (inclusief hoofdletters en kleine letters), leestekens, cijfers of symbolen te gebruiken, geldt ten minste één van de volgende zaken:
- Uitzetten: Er is een mechanisme beschikbaar waarmee de sneltoets kan worden uitgezet;
- Opnieuw toewijzen: Er is een mechanisme beschikbaar om de sneltoets opnieuw toe te wijzen aan één of meerdere niet-afdrukbare tekens (bijvoorbeeld Ctrl, Alt, enz.);
- Alleen actief bij focus: De sneltoets voor een component van de gebruikersinterface is alleen actief wanneer de betreffende component de focus heeft.
Informatie over succescriterium 2.1.4 Enkel teken sneltoets
Uitkomst: Niet aanwezig
2.2 Genoeg tijd
2.2.1 Timing aanpasbaar (Niveau A)
Voor elke tijdslimiet die door de content wordt ingesteld, geldt ten minste één van de volgende zaken:
- Uitzetten: De gebruiker kan de tijdslimiet uitzetten voordat die wordt bereikt; of
- Aanpassen: De gebruiker mag de tijdslimiet aanpassen voordat deze is verstreken over een bereik van ten minste tien keer de standaardinstelling; of
- Verlengen: De gebruiker wordt gewaarschuwd voor de tijd afloopt en krijgt ten minste 20 seconden om de tijdslimiet met een eenvoudige handeling te verlengen (bijvoorbeeld, "druk op de spatiebalk"), en de gebruiker mag de tijdslimiet ten minste tien keer verlengen; of
- Real-time uitzondering: De tijdslimiet is onderdeel van een realtime gebeurtenis (een veiling bijvoorbeeld) en er is geen alternatief voor de tijdslimiet mogelijk; of
- Essentiële uitzondering: De tijdslimiet is essentieel en verlenging zou de activiteit ongeldig maken; of
- 20 uur uitzondering: De tijdslimiet is langer dan 20 uur.
Informatie over succescriterium 2.2.1 Timing aanpasbaar
Uitkomst: Voldoende
2.2.2 Pauzeren, stoppen, verbergen (Niveau A)
Voor alle bewegende, knipperende, scrollende of automatisch actualiserende informatie gelden alle volgende zaken:
- Bewegen, knipperen, scrollen: Voor bewegende, knipperende of scrollende informatie die (1) automatisch start, (2) langer dan vijf seconden duurt, en (3) parallel met andere content wordt getoond, is er een mechanisme voor de gebruiker om dit te pauzeren, te stoppen of te verbergen, tenzij de beweging, knippering of scrolling, onderdeel is van een activiteit waar ze essentieel is en
- Automatisch actualiserend: Voor elke soort automatisch actualiserende informatie die (1) automatisch start en (2) parallel met andere content wordt gepresenteerd, is er een mechanisme voor de gebruiker om dit te pauzeren, te stoppen of te verbergen of de frequentie van de actualisering in te stellen, tenzij de automatische actualisering onderdeel is van een activiteit waar ze essentieel is.
Informatie over succescriterium 2.2.2 Pauzeren, stoppen, verbergen
Uitkomst: Voldoende
2.3 Toevallen en fysieke reacties
2.3.1 Drie flitsen of beneden drempelwaarde (Niveau A)
Webpagina's bevatten niets wat meer dan drie keer flitst in enige periode van één seconde of de flits is beneden de algemene flits- en rodeflitsdrempelwaarden.
Informatie over succescriterium 2.3.1 Drie flitsen of beneden drempelwaarde
Uitkomst: Voldoende
2.4 Navigeerbaar
2.4.1 Blokken omzeilen (Niveau A)
Er is een mechanisme beschikbaar om blokken content die op meerdere webpagina's worden herhaald te omzeilen.
Informatie over succescriterium 2.4.1 Blokken omzeilen
Uitkomst: Voldoende
2.4.2 Paginatitel (Niveau A)
Webpagina's hebben titels die het onderwerp of doel beschrijven.
Informatie over succescriterium 2.4.2 Paginatitel
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel/404 is de titel "404 pagina - Kadaster.nl particulier" geen goede beschrijving van de inhoud van de pagina. In het title-element van elke pagina moet een tekst staan die de inhoud van de pagina beschrijft, bij voorkeur gevolgd door de naam van de organisatie. Hierdoor begrijpen bezoekers beter waar de pagina over gaat. Wanneer correct ingesteld, wordt deze tekst bovendien getoond in de tab van de browser. Met een duidelijke beschrijving kunnen bezoekers makkelijker navigeren tussen verschillende pagina's. Zet een duidelijke tekst in het title-element van de pagina die de inhoud van de pagina beschrijft, bijvoorbeeld "Pagina niet gevonden, 404-fout - Kadaster.nl particulier".
Het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Eigendomsinformatie%20productvoorbeeld/94853973-7b55-ea04-25a4-18b8a383143e heeft een beschrijvende titel, maar deze wordt niet weergegeven in de titelbalk; in plaats daarvan wordt de bestandsnaam getoond. Als een PDF geopend wordt in een PDF-lezer (zoals Adobe Acrobat of een browser), staat de bestandsnaam meestal bovenaan in de titelbalk, bijvoorbeeld document123.PDF. Maar als een documenttitel in de PDF-metadata is ingesteld, dan wordt die titel in plaats van de bestandsnaam getoond. Dit maakt het document toegankelijker voor bezoekers met verschillende beperkingen. Zij kunnen dan snel en gemakkelijk zien of het document relevant is. Dit kan aangepast worden in de bestandseigenschappen van het bronbestand of van het PDF-document.
Hetzelfde probleem doet zich voor in het PDF-document op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f.
2.4.3 Focus volgorde (Niveau A)
Als een webpagina sequentieel genavigeerd kan worden en de navigatiesequenties hebben invloed op de betekenis of het gebruik, dan krijgen focusbare componenten de focus in de juiste volgorde waardoor betekenis en bedienbaarheid behouden blijft.
Informatie over succescriterium 2.4.3 Focus volgorde
Uitkomst: Onvoldoende
Bevindingen: Op de pagina's van de website, zoals https://www.cms2.acceptatie.kadaster.nl/winkel, opent een knop met de tekst "Feedback" een dialoogvenster. Momenteel kan de toetsenbordfocus het geopende dialoogvenster verlaten en naar de onderliggende pagina-inhoud gaan. Bij dit soort dialoogvensters moet de toetsenbordfocus goed worden ingesteld. Wanneer het venster actief is, moet de toetsenbordfocus binnen het venster blijven en mag deze niet op de onderliggende pagina terechtkomen. Dit kan worden opgelost door de focus binnen het venster te houden, totdat de bezoeker op de sluitknop heeft geklikt of op de ESC-toets heeft gedrukt. Het is ook mogelijk om het venster automatisch te sluiten zodra de focus eruit gaat.
2.4.4 Linkdoel (in context) (Niveau A)
Het linkdoel kan bepaald worden uit enkel de linktekst of uit de linktekst samen met zijn door software bepaalde linkcontext, behalve daar waar het doel van de link een dubbelzinnige betekenis zou kunnen hebben voor gebruikers in het algemeen.
Informatie over succescriterium 2.4.4 Linkdoel (in context)
Uitkomst: Voldoende
2.4.5 Meerdere manieren (Niveau AA)
Er is meer dan één manier beschikbaar om een webpagina binnen een verzameling webpagina's te vinden, behalve wanneer de webpagina het resultaat is van, of een stap in, een proces.
Informatie over succescriterium 2.4.5 Meerdere manieren
Uitkomst: Voldoende
2.4.6 Koppen en labels (Niveau AA)
Koppen en labels beschrijven het onderwerp of doel.
Informatie over succescriterium 2.4.6 Koppen en labels
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel, na het invoeren van een adres in het zoekveld, verschijnen knoppen met productprijzen, bijvoorbeeld "€ 3.70" om toe te voegen aan de winkelwagen. De toegankelijke namen van deze knoppen, zoals "€ 3.70", beschrijven niet goed welk product aan de winkelwagen wordt toegevoegd. Een blinde bezoeker weet daardoor niet wat deze knop precies doet. Dit kan worden opgelost door tekst met de productnaam toe te voegen aan de toegankelijke namen.
Hetzelfde probleem doet zich voor op de pagina https://www.cms2.acceptatie.kadaster.nl/winkelwagen bij het toevoegen van een nieuw product.
2.4.7 Focus zichtbaar (Niveau AA)
Elke gebruikersinterface die met een toetsenbord te bedienen is, heeft een bedieningswijze waarbij de indicator van de toetsenbordfocus zichtbaar is.
Informatie over succescriterium 2.4.7 Focus zichtbaar
Uitkomst: Voldoende
2.5 Input modaliteiten
2.5.1 Aanwijzergebaren (Niveau A)
Alle functionaliteit waarmee bij de bediening gebruik wordt gemaakt van meerpunts- of padgebaseerde gebaren, kan worden bediend met een enkele aanwijzer zonder een padgebaseerd gebaar, tenzij een meerpunts- of padgebaseerd gebaar essentieel is.
Informatie over succescriterium 2.5.1 Aanwijzergebaren
Uitkomst: Voldoende
2.5.2 Aanwijzerannulering (Niveau A)
Voor functionaliteit die kan worden bediend met een enkele aanwijzer, geldt ten minste één van de volgende zaken:
- Geen down-event: Het down-event van de aanwijzer wordt niet gebruikt om enig onderdeel van de functie uit te voeren;
- Afbreken of ongedaan maken: De functie wordt voltooid door het up-event en er is een mechanisme beschikbaar om de functie af te breken voordat deze wordt voltooid of om de functie ongedaan te maken als deze is voltooid;
- Up reversal: Met het up-event wordt elk resultaat van het voorgaande down-event ongedaan gemaakt;
- Essentieel: Het voltooien van de functie met het down-event is essentieel.
Informatie over succescriterium 2.5.2 Aanwijzerannulering
Uitkomst: Voldoende
2.5.3 Label in naam (Niveau A)
Bij componenten van de gebruikersinterface met labels die tekst of afbeeldingen van tekst bevatten, bevat de naam de tekst die visueel wordt weergegeven.
Informatie over succescriterium 2.5.3 Label in naam
Uitkomst: Onvoldoende
Bevindingen: In de header van de website, op kleine schermen, opent de knop met een vergrootglasicoon de zoekbalk. De zichtbare tekst (placeholdertekst) van de zoekbalk is "Waar ben je naar op zoek?", en de toegankelijke naam van het input-element is "Zoeken". Als de toegankelijke naam van een element niet hetzelfde is als de zichtbare tekst (in dit geval de placeholder-tekst), is het voor bezoekers die gebruikmaken van spraaksoftware niet mogelijk om het element te bedienen. Zij spreken een commando uit door de zichtbare tekst voor te lezen. Als deze niet voorkomt in de toegankelijke naam die in de code staat, werkt het commando niet. Zorg ervoor dat de toegankelijke naam de zichtbare tekst bevat, bij voorkeur aan het begin van de naam. De toegankelijke naam mag ook exact hetzelfde zijn als de zichtbare tekst.
Zie pagina https://www.cms2.acceptatie.kadaster.nl/winkel.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een invoerveld met de zichtbare tekst "Card number:" en de toegankelijke naam van het invoerveld ontbreekt. Als de toegankelijke naam van een element niet hetzelfde is als de zichtbare tekst, is het voor bezoekers die gebruikmaken van spraaksoftware niet mogelijk om het element te bedienen. Zij spreken een commando uit door de zichtbare tekst voor te lezen. Als deze niet voorkomt in de toegankelijke naam die in de code staat, werkt het commando niet. Zorg ervoor dat de toegankelijke naam de zichtbare tekst bevat, bij voorkeur aan het begin van de naam. De toegankelijke naam mag ook gelijk zijn als de zichtbare tekst.
2.5.4 Bewegingsactivering (Niveau A)
Functionaliteit die kan worden bediend door de beweging van een apparaat of beweging van een gebruiker, kan ook worden bediend met componenten van de gebruikersinterface. De reactie op de beweging kan worden uitgeschakeld om onbedoelde activering te voorkomen, behalve wanneer:
- Ondersteunde interface: De beweging wordt gebruikt om de functionaliteit te bedienen via een door toegankelijkheid ondersteunde interface;
- Essentieel: De beweging is essentieel voor de functie en wanneer de reactie op de beweging wordt uitgeschakeld, wordt de activiteit ongeldig gemaakt.
Informatie over succescriterium 2.5.4 Bewegingsactivering
Uitkomst: Voldoende
3. Begrijpelijk
3.1 Leesbaar
3.1.1 Taal van de pagina (Niveau A)
De standaard menselijke taal van elke webpagina kan door software bepaald worden.
Informatie over succescriterium 3.1.1 Taal van de pagina
Uitkomst: Onvoldoende
Bevindingen: Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C ontbreekt het lang-attribuut op het HTML-element. Als dit attribuut niet aanwezig is, kan voorleessoftware de pagina niet in de correcte taal voorlezen. De software weet dan niet wat de primaire taal van de pagina is. Zorg ervoor dat het lang-attribuut aanwezig is en dat dit attribuut de taalcode bevat van de taal van de pagina. Zorg ervoor dat de taal van de pagina is ingesteld op Engels, zodat hulpsoftware de inhoud op de juiste manier kan voorlezen.
In de metadata van de PDF op https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f is de taal niet ingesteld. Het is belangrijk om de taal in te stellen. Dan kan hulpsoftware de informatie uit het bestand met de juiste uitspraakregels voorlezen. Dit kan worden ingesteld via de bestandseigenschappen.
3.1.2 Taal van onderdelen (Niveau AA)
De menselijke taal van elke passage of zin in de content kan door software bepaald worden, behalve waar het gaat om eigennamen, technische termen, woorden uit een onbepaalde taal en woorden of zinsdelen die deel zijn gaan uitmaken van het jargon van de onmiddellijk omringende tekst.
Informatie over succescriterium 3.1.2 Taal van onderdelen
Uitkomst: Onvoldoende
Bevindingen: In de header van de website staat een link met de zichtbare tekst "English". Het aria-label-attribuut wordt op deze link gebruikt en bevat tekst in het Engels: "Read Kadaster in English". Dit label wordt voorgelezen door schermlezers, volgens de uitspraakregels van de primaire taal van de pagina (in dit geval Nederlands). Geef in de code aan dat er een taalwisseling is, door in een omliggend HTML-element lang="en" toe te voegen. Een andere oplossing is om de tekst van het aria-label naar het Nederlands te vertalen, maar dat is in dit geval wellicht niet gewenst.
Zie pagina https://www.cms2.acceptatie.kadaster.nl/winkel.
3.2 Voorspelbaar
3.2.1 Bij focus (Niveau A)
Als een component van de gebruikersinterface de focus krijgt, dan veroorzaakt dat geen contextwijziging.
Informatie over succescriterium 3.2.1 Bij focus
Uitkomst: Voldoende
3.2.2 Bij input (Niveau A)
Verandering van de instelling van een component van de gebruikersinterface veroorzaakt niet automatisch een contextwijziging, tenzij de gebruiker geïnformeerd is over het gedrag vóór het gebruik van de component.
Informatie over succescriterium 3.2.2 Bij input
Uitkomst: Voldoende
3.2.3 Consistente navigatie (Niveau AA)
Navigatiemechanismen, die op meerdere webpagina's binnen een verzameling webpagina's herhaald worden, komen elke keer dat ze worden herhaald in dezelfde relatieve volgorde voor, tenzij een verandering wordt geïnitieerd door de gebruiker.
Informatie over succescriterium 3.2.3 Consistente navigatie
Uitkomst: Voldoende
3.2.4 Consistente identificatie (Niveau AA)
Componenten die dezelfde functionaliteit hebben binnen een verzameling webpagina's worden consistent geïdentificeerd.
Informatie over succescriterium 3.2.4 Consistente identificatie
Uitkomst: Voldoende
3.3 Assistentie bij invoer
3.3.1 Foutidentificatie (Niveau A)
Als een invoerfout automatisch ontdekt wordt, dan wordt het onderdeel waar de fout zit geïdentificeerd en wordt de fout tekstueel aan de gebruiker meegedeeld.
Informatie over succescriterium 3.3.1 Foutidentificatie
Uitkomst: Onvoldoende
Bevindingen: De pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C bevat een formulier. Na het verzenden van het formulier met ongeldige of onvolledige invoer worden er geen tekstuele foutmeldingen getoond om de bezoeker te informeren over de gevonden fouten. Dit succescriterium vereist dat wanneer een invoerfout automatisch wordt gedetecteerd, het foutieve item wordt geïdentificeerd en de fout in tekst aan de bezoeker wordt beschreven. Zorg voor duidelijke tekstuele foutmeldingen die het veld met de fout identificeren en het probleem beschrijven. Een voorbeeld van een goede foutmelding is "Het veld [NAAM] is niet (goed) ingevuld.".
3.3.2 Labels of instructies (Niveau A)
Als de content gebruikersinvoer vereist, dan worden labels of instructies geleverd.
Informatie over succescriterium 3.3.2 Labels of instructies
Uitkomst: Onvoldoende
Bevindingen: Op de pagina's van de website, zoals https://www.cms2.acceptatie.kadaster.nl/winkel, opent een knop met de tekst "Feedback" een dialoogvenster. Dit dialoogvenster bevat een textarea-element met placeholdertekst "Waar was u naar op zoek?". Er ontbreekt echter een permanent label; de placeholdertekst wordt als label gebruikt. Invoervelden moeten een label hebben dat altijd zichtbaar is. Hier kan dus niet een placeholdertekst voor worden gebruikt, want die verdwijnt zodra de bezoeker begint te typen.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een formulier met twee select-elementen en één label "Expiration date:". Volgens de HTML-specificatie https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#the-label-element kan één label niet tegelijkertijd aan twee select-elementen worden gekoppeld. Voeg aparte labels toe voor elk select-element, bijvoorbeeld maand en jaar. Deze select-elementen kunnen in een fieldset-element worden geplaatst, en de tekst "Expiration date:" in een legend-element. Andere oplossingen zijn ook mogelijk.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een formulier. Sommige velden zijn verplicht en bevatten een *-symbool (asterisk) in het label. Er is geen uitleg over wat dit symbool betekent. Dit kan nuttig zijn voor bezoekers met cognitieve beperkingen.
3.3.3 Foutsuggestie (Niveau AA)
Als een invoerfout automatisch ontdekt wordt en suggesties voor verbetering bekend zijn, dan worden de suggesties aan de gebruiker geleverd, tenzij dit de beveiliging of het doel van de content in gevaar zou brengen.
Informatie over succescriterium 3.3.3 Foutsuggestie
Uitkomst: Voldoende
3.3.4 Foutpreventie (wettelijk, financieel, gegevens) (Niveau AA)
Voor webpagina's die wettelijke verplichtingen of financiële transacties voor de gebruiker uitvoeren, die, door de gebruiker te beheren gegevens in gegevensopslagplaatsen verwijderen of wijzigen, of die antwoorden van de gebruiker verzenden, geldt minstens één van de volgende zaken:
- Omkeerbaar: Verzendingen kunnen ongedaan gemaakt worden.
- Gecontroleerd: Door de gebruiker ingevoerde gegevens worden gecontroleerd op invoerfouten en de gebruiker wordt de mogelijkheid gegeven om ze te verbeteren.
- Bevestigd: Er is een mechanisme beschikbaar voor het beoordelen, bevestigen en verbeteren van informatie voordat de verzending wordt voltooid.
Informatie over succescriterium 3.3.4 Foutpreventie (wettelijk, financieel, gegevens)
Uitkomst: Voldoende
4. Robuust
4.1 Compatibel
4.1.1 Parsen (Niveau A)
In content die geïmplementeerd is met opmaaktalen hebben elementen volledige begin- en eindtags, zijn elementen genest volgens hun specificatie, bevatten elementen geen dubbele attributen en zijn alle ID's uniek, behalve waar de specificatie deze eigenschappen toelaat.
Informatie over succescriterium 4.1.1 Parsen
Uitkomst: Voldoende
4.1.2 Naam, rol, waarde (Niveau A)
Voor alle componenten van de gebruikersinterface (inclusief, maar niet uitsluitend voor formulierelementen, links en door scripts gegenereerde componenten), kunnen de naam (name) en rol (role) door software bepaald worden; toestanden (states), eigenschappen (properties) en waarden (values) die door de gebruiker ingesteld kunnen worden, kunnen door software ingesteld worden; en kennisgeving van veranderingen in deze items is beschikbaar voor user agents, met inbegrip van hulptechnologieën.
Informatie over succescriterium 4.1.2 Naam, rol, waarde
Uitkomst: Onvoldoende
Bevindingen: In de header van de website bevat het hoofdmenu links zoals "Situaties" die submenu's openen en sluiten, maar een blinde bezoeker krijgt niet altijd informatie of de submenu's open of gesloten zijn. Hoewel het aria-expanded-attribuut wordt gebruikt, wordt het pas aan de link toegevoegd nadat het submenu voor de eerste keer is geopend. Hierdoor kan de open- of dichtstatus van de submenu's voor de eerste interactie en in de initiële staat niet programmatisch worden bepaald. Als er een link is die een submenu kan tonen of verbergen, dan moet hulpsoftware de staat van dat submenu (zichtbaar of verborgen) kunnen bepalen. Hiervoor moet het aria-expanded-attribuut altijd aanwezig zijn en de huidige status nauwkeurig weergeven.
Zie pagina https://www.cms2.acceptatie.kadaster.nl/winkel.
In de header van de website bevat het hoofdmenu links zoals "Situaties" die submenu's openen en sluiten. Deze links gebruiken het attribuut aria-haspopup="true", wat aangeeft dat het activeren van een link een popupmenu opent. De submenu's zijn echter geïmplementeerd als gewone navigatielijsten en niet als ARIA-menuwidgets. Hierdoor kunnen hulptechnologieën menuspecifieke rollen en toetsenbordgedrag verwachten die niet aanwezig zijn. Het gebruik van aria-haspopup zonder het bijbehorende menupatroon te implementeren is misleidend voor hulptechnologieën. Als het de bedoeling is om standaard navigatie-submenu's te presenteren, moet aria-haspopup="true" worden verwijderd en kunnen native HTML-semantiek (nav, ul, li) worden gebruikt. Als een ARIA-menuwidget bedoeld is, moet het volledige ARIA-menupatroon, inclusief de juiste rollen en toetsenbordinteractie, consistent worden geïmplementeerd.
Hetzelfde probleem doet zich voor bij de links in de submenu's die volgende submenu's openen.
Zie pagina https://www.cms2.acceptatie.kadaster.nl/winkel.
De pagina https://www.cms2.acceptatie.kadaster.nl/winkel bevat het zoekveld "Zoek op straatnaam en huisnummer of op postcode.". Het zoekveld is een element met role="combobox". Wanneer er geen resultaten worden gevonden, toont de suggestielijst de melding: "Geen resultaat gevonden". Het element met role= "listbox" heeft echter geen toegankelijke naam, waardoor het voor gebruikers van hulptechnologieën onduidelijk kan zijn wat deze lijst voorstelt. Zorg ervoor dat de listbox een toegankelijke naam heeft, bijvoorbeeld door aria-label of aria-labelledby te gebruiken.
De pagina https://www.cms2.acceptatie.kadaster.nl/winkel bevat het zoekveld met placeholdertekst "Adres of postcode + huisnummer" in het tabblad "Adres zoeken". Dit zoekveld is geïmplementeerd als een combobox (role="combobox"). Het aria-haspopup="listbox" is aanwezig in de code, maar het is toegepast op een div-element dat de combobox omhult, in plaats van op het element met role="combobox" zelf. Het aria-haspopup-attribuut moet worden toegepast op het element met role="combobox", zodat hulptechnologieën correct aankondigen dat het invoerveld een popup heeft en welk type popup het is.
Hetzelfde probleem doet zich voor bij het zoekveld met placeholdertekst "Kadastrale aanduiding" in het tabblad "Kadastrale aanduiding zoeken".
De pagina https://www.cms2.acceptatie.kadaster.nl/winkel bevat het zoekveld met placeholdertekst "Adres of postcode + huisnummer" in het tabblad "Adres zoeken". Dit zoekveld is geïmplementeerd als een combobox (role="combobox") en toont suggesties in een dropdown-lijst terwijl de bezoeker typt. Het element met de dropdown-lijst heeft role="listbox", maar deze listbox heeft geen toegankelijke naam. Hierdoor kunnen gebruikers van hulptechnologieën het doel van de lijst mogelijk niet bepalen wanneer deze wordt aangekondigd. Er is geprobeerd een toegankelijke naam te geven met het aria-labelledby-attribuut. Het element waarnaar verwezen wordt, bestaat echter niet in de code. Zorg ervoor dat het element met role="listbox" een toegankelijke naam heeft. Dit kan worden gedaan met aria-labelledby of aria-label. Als aria-labelledby wordt gebruikt, moet het element waarnaar verwezen wordt in de code bestaan en betekenisvolle tekst bevatten die het doel van de lijst beschrijft. Hierdoor kunnen hulptechnologieën de listbox correct aankondigen en bezoekers helpen begrijpen wat de lijst voorstelt.
Hetzelfde probleem doet zich voor bij het zoekveld met placeholdertekst "Kadastrale aanduiding" in het tabblad "Kadastrale aanduiding zoeken".
De pagina https://www.cms2.acceptatie.kadaster.nl/winkel bevat het zoekveld met placeholdertekst "Adres of postcode + huisnummer" in het tabblad "Adres zoeken". Het zoekveld is een element met role="combobox". Wanneer er geen resultaten worden gevonden, wordt de tekst "Geen resultaat gevonden" weergegeven in de suggestielijst. Deze melding is echter geplaatst in een li-element dat geen passende ARIA-rol heeft. Hierdoor ontbreekt de vereiste onderliggende ('child') rol (role="option") voor een listbox. Schermlezers kunnen deze melding daardoor niet correct aankondigen als onderdeel van de combobox-resultaten, waardoor het voor gebruikers onduidelijk is dat er geen resultaten beschikbaar zijn. Voor sommige ARIA-rollen is een combinatie van boven- en onderliggende rollen ('parent' en 'child') nodig. Dit is voor elke rol precies beschreven in WAI-ARIA. Als deze rollen niet (volledig) in de code staan, werken de elementen niet zoals de ontwikkelaar het bedoeld heeft. En als maar een deel van de verplichte rollen aanwezig is, heeft dat geen enkel (positief) effect op de toegankelijkheid.
Hetzelfde probleem doet zich voor bij het zoekveld met placeholdertekst "Kadastrale aanduiding" in het tabblad "Kadastrale aanduiding zoeken".
Op de pagina's van de website, zoals https://www.cms2.acceptatie.kadaster.nl/winkel, opent een knop met de tekst "Feedback" een dialoogvenster. Dit dialoogvenster heeft geen toegankelijke naam. Een blinde bezoeker heeft deze naam nodig om de inhoud van het dialoogvenster te begrijpen. Hulpsoftware kan daardoor niet doorgeven wat de inhoud van het dialoogvenster is. Dit kan opgelost worden door een aria-label aan het dialoogvenster toe te voegen met een duidelijke beschrijving van de inhoud.
Op de pagina https://www.cms2.acceptatie.kadaster.nl/winkel, na het invoeren van een adres in het zoekveld, verschijnen producten met prijsknoppen, bijvoorbeeld "€ 3.70". Wanneer op deze knoppen wordt geklikt, opent een modaal dialoogvenster zonder toegankelijke naam. Een bezoeker die een schermlezer gebruikt, heeft deze naam nodig om de inhoud van het dialoogvenster te begrijpen. Hulpsoftware kan daardoor niet doorgeven wat de inhoud van het dialoogvenster is. Dit kan opgelost worden door een aria-label aan het dialoogvenster toe te voegen met een duidelijke beschrijving van de inhoud.
Hetzelfde probleem doet zich voor bij dialoogvensters die openen met productnaamknoppen, bijvoorbeeld "Eigendomsinformatie".
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C heeft het invoerveld "Card number:" geen toegankelijke naam. Hierdoor is het voor blinde of slechtziende bezoekers die een schermlezer gebruiken niet duidelijk wat zij in moeten vullen. Invoervelden moeten altijd een toegankelijke naam hebben die het doel van het veld beschrijft. Geef het invoerveld dus een toegankelijke naam, bijvoorbeeld door een label-element aan het veld te koppelen.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C, onder "Expiration date:", staan dropdown-lijsten (select-elementen). De toegankelijke namen ontbreken.
Hierdoor is het element niet toegankelijk. Geef het select-element een toegankelijke naam.
Hoe dit moet, staat hierboven beschreven, zie 3.3.2.
Op de pagina https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C staat een knop met een "i"-icoon. Deze knop heeft niet de juiste toegankelijke rol en status (open-dicht). Elk HTML-element heeft standaard een rol. Dit betekent dat het element bepaalde eigenschappen en functies heeft om informatie aan de bezoeker te geven of om informatie van de bezoeker te ontvangen. De rol bepaalt dus wat het element doet. Schermlezers en andere hulpmiddelen moeten de correcte rol van elk element op een webpagina kennen. Zo kunnen ze op een slimme manier met het element omgaan en aan de bezoeker uitleggen wat het element doet. Zorg ervoor dat dit element de juiste toegankelijke rol heeft. De beste oplossing is het gebruik maken van standaard HTML-elementen.
De status van de knop kan worden getoond door het aria-expanded-attribuut toe te passen op de knop die opent en sluit, of door visueel verborgen tekst toe te voegen die de status van de sectie beschrijft.
4.1.3 Statusberichten (Niveau AA)
In content die is geïmplementeerd met opmaaktalen kunnen statusberichten door software bepaald worden met behulp van rol (role) of eigenschappen (properties), zodat hulptechnologieën de berichten aan de gebruiker kunnen presenteren zonder dat ze de focus krijgen.
Informatie over succescriterium 4.1.3 Statusberichten
Uitkomst: Onvoldoende
Bevindingen: De pagina https://www.cms2.acceptatie.kadaster.nl/winkel bevat het zoekveld met placeholdertekst "Adres of postcode + huisnummer" in het tabblad "Adres zoeken". Het zoekveld is een element met role="combobox". Wanneer er geen resultaten worden gevonden, wordt de tekst "Geen resultaat gevonden" weergegeven in de suggestielijst. Dit is een statusbericht, maar wordt niet als dusdanig voorgelezen. Dat zou wel moeten gebeuren. Deze melding is namelijk een statusbericht. Statusberichten moeten automatisch voorgelezen worden door schermlezers zodra ze verschijnen of veranderen.
Hetzelfde probleem doet zich voor bij het zoekveld met placeholdertekst "Kadastrale aanduiding" in het tabblad "Kadastrale aanduiding zoeken".
Op de pagina's van de website, zoals https://www.cms2.acceptatie.kadaster.nl/winkel, opent een knop met de tekst "Feedback" een dialoogvenster. In dit dialoogvenster toont een formulier het statusbericht "Bedankt voor uw mening" na verzending zonder dat de pagina opnieuw laadt, en de focus wordt niet naar het bericht verplaatst. De pagina laadt niet opnieuw en de toetsenbordfocus wordt niet naar de melding verplaatst. Daarom is extra code nodig zodat schermlezers het statusbericht automatisch voorlezen zodra het verschijnt. Voeg aria-live="polite" of role="status" toe aan de melding. Meer informatie over role="status" is te vinden op de pagina https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA22.
Op de pagina https://www.cms2.acceptatie.kadaster.nl/klant staat een formulier. Wanneer er formulierfouten optreden, verschijnt er een foutmelding, maar de melding wordt niet aangekondigd door een schermlezer. Bijvoorbeeld "Het ingevoerde e-mailadres is geen geldig adres. Probeer het opnieuw in de vorm: mailto:gebruiker@mail.nl". Als de foutmelding geen toetsenbordfocus krijgt op het moment dat deze verschijnt, krijgen mensen die blind zijn geen melding van hun schermlezer. Voeg daarom aria-live="polite" aan de melding toe. Dan wordt de melding automatisch voorgelezen zodra deze verschijnt.
Hetzelfde probleem doet zich voor op de pagina https://www.cms2.acceptatie.kadaster.nl/betalen bij het verzenden van het formulier zonder het selectievakje aan te vinken, met de foutmelding "Het veld 'Ik accepteer de algemene voorwaarden' is nog niet ingevuld. Klik op het keuzevakje om de algemene voorwaarden te accepteren".
Onderbouwing van de evaluatie
Het onderzoek is uitgevoerd op basis van de evaluatiemethode van het W3C, WCAG-EM. Dit gebeurt grotendeels handmatig door een steekproef te nemen. Voor een quickscan geldt dat we slechts delen uit deze methodiek gebruiken. Ondanks alle zorgvuldigheid en ervaring van de onderzoeker kan het voorkomen dat een probleem niet gesignaleerd is. Houd er rekening mee dat in een volgend onderzoek bepaalde onderdelen anders worden beoordeeld omdat technologieën en hulpsoftware worden doorontwikkeld. Bij het handmatig onderzoek wordt gebruik gemaakt van tools.
Steekproef getoetste webpagina's
- https://www.cms2.acceptatie.kadaster.nl/winkel
- https://www.cms2.acceptatie.kadaster.nl/winkelwagen
- https://www.cms2.acceptatie.kadaster.nl/klant
- https://www.cms2.acceptatie.kadaster.nl/betalen
- https://testcheckout.buckaroo.nl/html/?brq_pttk=08641A1A7C01492AA32E0474C764D92C
- https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Eigendomsinformatie%20productvoorbeeld/94853973-7b55-ea04-25a4-18b8a383143e
- https://www.cms2.acceptatie.kadaster.nl/winkel/404
- https://www.cms2.acceptatie.kadaster.nl/documents/1953498/0/Hypotheekinformatie%20productvoorbeeld/52e0371d-c972-c137-1411-8f2826a3ee7f
Ondersteunende technieken
Webbrowsers (useragents) en andere software
Bij dit onderzoek is de volgende software gebruikt:- Chrome, versie 143
- Firefox, versie 147
- Safari, versie 18 in combinatie met VoiceOver
- NVDA in combinatie met Firefox
- PAC om pdf's te onderzoeken
Bronnen
-
Website Accessibility Conformance Evaluation Methodology (WCAG-EM) Overview
www.w3.org/WAI/eval/conformance (Engels) -
Web Content Accessibility Guidelines (WCAG) 2.1 (Geautoriseerde Nederlandse vertaling)
www.w3.org/Translations/WCAG21-nl -
Website Accessibility Conformance Evaluation Methodology (WCAG-EM)
www.w3.org/WAI/eval/conformance -
Web Content Accessibility Guidelines (WCAG)
www.w3.org/WAI/intro/wcag -
How to Meet WCAG 2.1 Quick Reference
www.w3.org/WAI/WCAG21/quickref/
Deze rapportage is grotendeels gemaakt met de online evaluatietool van W3C.