Rapport:
Audit digitale toegankelijkheid website COSSAS
- Onderzoeker
- Michiel, Swink; Renate, Swink
- Datum
- 12 januari 2023
- Opdrachtgever
- TNO
Samenvatting onderzoeksresultaat
De website COSSAS Community for Open Source Security Automation Software voldoet nog niet aan WCAG 2.1 niveau AA. Er zijn 17 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 cossas-project.org is onderzocht tussen 6 en 10 januari 2023. 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 is goed responsive waardoor bijvoorbeeld het schalen van tekst goed gaat. De navigatie is duidelijk en consistent.
Er zijn echter een aantal verbeterpunten waardoor de website niet toegankelijk is waarvan de voornaamste zijn:
- Navigatie met behulp van het toetsenbord is problematisch onder andere omdat niet te zien is welk element focus heeft.
- Het contrast tussen oranje teksten en de witte achtergrond is te laag waardoor teksten moeilijk leesbaar zijn.
- De video's op de website zijn niet toegankelijk.
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 | COSSAS Community for Open Source Security Automation Software |
---|---|
Scope van de website |
Binnen de scope van het onderzoek valt:
|
Conformiteitsdoel | WCAG 2.1 niveau AA |
Basisniveau van toegankelijkheid ondersteund | Gangbare browsers en hulpsoftware. |
Overzicht toetsresultaat
Principe | Voldoende | Onvoldoende | Onbekend |
---|---|---|---|
1 Waarneembaar | 12 | 8 | 0 |
2 Bedienbaar | 10 | 7 | 0 |
3 Begrijpelijk | 9 | 1 | 0 |
4 Robuust | 2 | 1 | 0 |
Totaal | 33 | 17 | 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: Op de homepagina staat groot het logo van COSSAS open source security automation software. De toegankelijke tekst van de afbeelding is 'COSSAS logo in full format with dark grey and orange characters'. Dit beschrijft de afbeelding niet voldoende. De alternatieve tekst van een logo moet altijd tenminste de naam van de organisatie en eventuele overige tekst in de afbeelding bevatten.
Op pagina cossas-project.org/software/ staat boven 'Partner software' een link in de vorm van een icoon van een laptop. Het icoon wordt door middel van het pseudo-element :before en de content property in de CSS op de pagina gezet. Op deze manier kan het zijn dat het icoon wegvalt, bijvoorbeeld voor mensen die een eigen CSS gebruiken, of wanneer de CSS niet geladen wordt. De content property is alleen geschikt voor het toevoegen van puur decoratieve content. In dit geval gaat het om een afbeelding die naar de pagina partnersoftware linkt. Aangezien dezelfde link direct onder de afbeelding nogmaals geplaatst is, kan de link in dit geval beter verwijderd worden. Zie succescriterium 2.4.4. Wanneer dat gebeurd is kan het icoon wel als decoratief gezien worden. Zolang de afbeelding linkt naar een andere pagina, moet er een tekstueel alternatief worden toegevoegd.
Vergelijkbare problemen met CSS afbeeldingen komen voor op pagina cossas-project.org/partner-software/ bij de Github iconen die linken naar de Github pagina's van de projecten en bij de social media iconen onderaan elke pagina.
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: Voldoende
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: Onvoldoende
Bevindingen: Op de pagina cossas-project.org/portfolio/sacti/ wordt een video getoond. In de video komt gesproken woord voor, maar de ondertiteling ontbreekt. Hetzelfde komt vaker voor in de website, bijvoorbeeld bij de video op pagina cossas-project.org/portfolio/dgad/
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: Onvoldoende
Bevindingen: Op pagina cossas-project.org/portfolio/sacti/ is er in de video op verschillende plaatsen tekst in beeld, bijvoorbeeld vanaf 3:35. Er ontbreekt uitgeschreven tekst en er is ook geen voiceover die vertelt wat er op het scherm staat. Zo kunnen mensen die de video niet kunnen zien en afhankelijk zijn van een screenreader niet weten wat er wordt getoond in de video. Zet deze en andere informatie in een transcript. Of maak gebruik van een extra audiospoor om ook te voldoen aan SC 1.2.5. Hetzelfde komt vaker voor in de website, bijvoorbeeld bij de video op pagina cossas-project.org/portfolio/dgad/
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: Onvoldoende
Bevindingen: Op pagina cossas-project.org/portfolio/sacti/ is er in de video op verschillende plaatsen tekst in beeld, bijvoorbeeld vanaf 3:35. De audiodescriptie ontbreekt in deze video. Audiodescriptie is een (extra) audiospoor waarin verteld wordt wat er in beeld te zien is. Zo kunnen mensen die de video niet kunnen zien en afhankelijk zijn van een screenreader niet weten wat er wordt getoond in de video. Maak gebruik van een extra audiospoor.
Hetzelfde komt vaker voor in de website, bijvoorbeeld bij de video op pagina cossas-project.org/portfolio/dgad/
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 pagina cossas-project.org/portfolio/sacti/ is de tekst 'CONTEXT AND BACKGROUND' visueel een kop maar hij niet opgemaakt als kop. Zorg er voor dat informatie die visueel beschikbaar is ook voor hulpsoftware beschikbaar is. Dat kan door een goede semantische opmaak van de HTML waaronder ook een goede koppenstructuur valt.
Hetzelfde komt vaker in de website voor, bijvoorbeeld op pagina cossas-project.org/portfolio/dgad/.
Advies: Op de homepagina is de eerste kop van het niveau 5. Sla geen kopniveaus over. Bezoekers die gebruikmaken van voorleessoftware kunnen aan de hand van een sneltoets of een koppen lijst over een pagina navigeren om snel informatie te vinden. Daarom is het belangrijk om een goed lopende koppenstructuur te gebruiken. Een goede koppenstructuur begint bij een kopniveau 1 voor de titel van de pagina, kopniveau 2 voor de koppen, kopniveau 3 voor de tussenkoppen, etc.
Hetzelfde komt op meerdere plaatsen in de website voor, bijvoorbeeld op pagina cossas-project.org/?s=software waar door een verkeerde koppenstructuur het voor bijvoorbeeld blinde bezoekers lijkt of de links in de footer van de pagina horen bij de kop 'Recent Comments'.
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 pagina cossas-project.org/contact/ is een formulier waar de bezoeker onder andere het eigen e-mailadres en naam kan invullen. Het doel van deze en een aantal andere velden moet programmatisch kunnen worden bepaald, zodat velden automatisch kunnen worden ingevuld of extra hulp kan worden geboden bij het invullen. Dit kan door het autocomplete-attribuut aan de input-elementen toe te voegen. Bijvoorbeeld voor e-mailadres autocomplete="email".
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: Voldoende
Bevindingen: Advies: Op pagina cossas-project.org/portfolio/sacti/ komen in de lopende tekst oranje hyperlinks voor. De links zijn alleen te onderscheiden door kleur, dat is in strijd met 1.4.1. Er is een uitzondering op deze regel als de contrastratio met omliggende tekst minimaal 3:1 is, dat is hier het geval. Maar de contrastratio met de achtergrond is te laag, zie 1.4.3. Pas er op bij het aanpassen van de kleur dat de contrastratio met omliggende tekst minimaal 3:1 blijft, of zorg ervoor dat hyperlinks in lopende tekst ook herkenbaar zijn aan minimaal één andere eigenschap, bijvoorbeeld door ze te onderstrepen.
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 pagina cossas-project.org/contact/ is een oranje tekst '// COSSAS' (HEX #FF9900) op een witte achtergrond. Deze tekst heeft een te laag contrast. De contrastverhouding is 2,1:1 waar dit minimaal 4,5:1 moet zijn. De witte tekst 'Your email address will not be published' op dezelfde oranje achtergrondkleur heeft het zelfde probleem. Zorg voor een andere kleur waarbij de contrastverhouding tussen tekst en achtergrond voldoende is. Dit probleem komt op veel pagina's in de website voor, bijvoorbeeld op pagina /cossas-project.org/software/ bij de tekst 'CI/CD pipelines'.
Op pagina cossas-project.org/contact/ heeft in het contactformulier de witte placeholder text op de licht oranje achtergrond (HEX #FFB84D) een te laag contrast. De contrastverhouding is 1,7:1 waar dit minimaal 4,5:1 moet zijn.
In de zoekresultaten pagina cossas-project.org/?s=software staat in het zoekveld met de tekst 'software'. De grijze text (HEX: #B5B5B%) op de lichtgrijze achtergrond (HEX #F6F6F6) heeft een te laag contrast. De contrastverhouding is 1,9:1 waar dit minimaal 4,5:1 moet zijn. Het zoekveld komt twee keer voor in de pagina.
Op onder andere pagina https://cossas-project.org/contact/ staan een kruimelpad. Wanneer bezoekers met de muis over de link 'Home' navigeren kleurt de linktekst wit en heeft het onvoldoende contrast met de lichtgrijze afbeelding.
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: Voldoende
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: Voldoende
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 pagina cossas-project.org/quality-assurance/ staan lijsten met oranje bullets (HEX #FF9900).
De contrastverhouding van de bullets met de achtergrond is 2,1:1 waar dit minimaal 3:1 moet zijn. De witte tekst 'Your email address will not be published' op dezelfde oranje achtergrondkleur heeft hetzelfde probleem. Zorg voor een andere kleur waarbij de contrastverhouding tussen tekst en achtergrond voldoende is.
Op pagina cossas-project.org/contact/ wordt door een oranje lijn onder het menu item 'Contact' (HEX #FF9900) aangegeven dat dit de huidige pagina is. De contrastverhouding van de lijn met de witte achtergrond is 2,1:1 waar dit minimaal 3:1 moet zijn.
Op pagina cossas-project.org/contact/ staat een contactformulier. De invulvelden zijn licht oranje (HEX #FFB84D) op een oranje achtergrond (HEX #FF9900). De contrastverhouding is hier 1,3:1, waar dit minimaal 3:1 moet zijn. Hierdoor zijn voor slechtzienden en kleurenblinden de invoervelden niet of moeilijk waar te nemen. Gebruik bijvoorbeeld een andere kleur op die plekken waar het contrast te laag is.
De website bevat een cookiemelding, met een knop om de cookiemelding te sluiten. De contrastratio tussen de grijze knop (HEX #666669) en de donkergrijze achtergrond (HEX #4C4C52) is 1,4:1 waar dat minimaal 3:1 moet zijn.
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: Voldoende
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: De zoek functie bovenaan elke pagina is door bezoekers die met het toetsenbord navigeren, bijvoorbeeld met de tabtoets, niet te gebruiken omdat de link geen focus krijgt. Zorg ervoor dat alle interactieve elementen bereikbaar en bedienbaar zijn met het toetsenbord.
Wanneer bezoekers met de muis over de menu items in het navigatiemenu bovenaan iedere pagina hoveren, verschijnen er aanvullende menu items. Deze menu items zijn niet bereikbaar en bedienbaar met het toetsenbord. Zorg ervoor dat alle interactieve elementen bereikbaar en bedienbaar zijn met het toetsenbord.
Bij navigatie met het toetsenbord is na de link 'GITHUB' rechts boven aan elke pagina er een link buiten beeld naar '#' die focus krijgt. Bij klikken schuift een zijpaneel in beeld. Dat is niet meer weg te halen, ook niet als het 'x' icoon focus heeft. Zorg er voor dat alle interactieve elementen met behulp van het toetsenbord zijn te bedienen.
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: Onvoldoende
Bevindingen: Op de pagina cossas-project.org/portfolio/sacti/ wordt gebruik gemaakt van de videospeler van Vimeo. Deze videospeler maakt gebruik van bediening door enkele tekentoetsen, bijvoorbeeld f voor fullscreen. Deze functionaliteit is iets wat mensen die afhankelijk zijn van spraaksoftware in de weg kan staan. Deze mensen zijn juist afhankelijk van die korte commando's om met spraaksoftware hun computer te bedienen. Los dit op door de embedcode van de Vimeo video aan te passen zodat de bediening met tekentoetsen uit staat. De eigenschap die toegevoegd moet worden aan de embed code is 'keyboard: false'. Met deze aanpassing zorg je ervoor dat je voldoet aan dit succescriterium.
Hetzelfde komt vaker voor in de website, bijvoorbeeld bij de video op pagina cossas-project.org/portfolio/dgad/
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: Onvoldoende
Bevindingen: Op elke pagina ontbreekt een mechanisme om de herhalende content over te slaan. Dit kan opgelost worden door een link op de pagina te plaatsen (skiplink) die de focus verplaatst naar de eerste unieke inhoud van de pagina. Deze link moet de eerste link van de pagina zijn. Deze link mag standaard verborgen zijn voor bezoekers, maar moet zichtbaar worden als de focus er op komt wanneer met het toetsenbord wordt genavigeerd.
2.4.2 Paginatitel (Niveau A)
Webpagina's hebben titels die het onderwerp of doel beschrijven.
Informatie over succescriterium 2.4.2 Paginatitel
Uitkomst: Voldoende
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: De eerste keer dat een bezoeker de website bezoekt, verschijnt er een cookiemelding over de pagina heen. De cookiemelding krijgt niet als eerste focus. Dit belemmert het gebruik van de website voor bezoekers die met het toetsenbord navigeren. Zorg dat de melding als eerste weg te klikken is of integreer de melding in de webpagina.
Bij een schermresolutie van 1024x768 is er een hamburger icoon waarmee je het hoofdmenu kan uitklappen. Als je nu met de tabtoets verder navigeert kan je het menuvenster verlaten. Daardoor kan je niet meer zien waar je bent. Zorg dat je het menuvenster pas kan verlaten als deze gesloten wordt.
Rechts onderaan elke pagina is een knop waarmee naar de top van de pagina gescrold kan worden. De focus verandert echter niet mee, dat is verwarrend. Zorg er voor dat de focus ook naar de top van de pagina verplaatst.
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: Onvoldoende
Bevindingen: De links onder het logo ‘Cossas open source security automation software’ hebben geen toegankelijke naam (bijvoorbeeld de link ‘Explore our software’). Omdat de link geen linkdoel heeft, is het voor blinden en slechtzienden die gebruikmaken van een screenreader niet duidelijk waar de link heen gaat. Voeg een duidelijke linktekst toe om dit probleem op te lossen. Hetzelfde probleem komt op meer plaatsen in de website voor, bijvoorbeeld op pagian 'cossas-project.org/?s=software' onder 'Jina Peterson' hebben de social media links geen naam, even als de pijl onderaan de pagina om naar de volgende zoekresultaten te gaan.
Op pagina cossas-project.org/software/ staan links met de linktekst 'READ MORE'. Vermijd linkteksten als ‘Lees meer’ en ‘Klik hier’, zulke teksten beschrijven het linkdoel niet. Zorg dat linkteksten duidelijk beschrijven waar de link naartoe gaat, bijvoorbeeld door de tekst aan te vullen met de titel van het bericht of pagina waarnaar gelinkt wordt. Als visueel duidelijk is waar de link bij hoort hoeft deze aanvullende tekst niet visueel zichtbaar te zijn.
Hetzelfde komt vaker voor in de website, bijvoorbeeld op pagina cossas-project.org/?s=software bij de links 'LEARN MORE'.
Op pagina cossas-project.org/?s=software is een navigatie om tussen de zoekresultaten te kunnen navigeren. De naam van de links luiden nu 1 en 2. Een screenreader leest nu deze links voor maar voor mensen die het scherm niet of niet goed kunnen zien is het onduidelijk wat er gebeurt als je op 1 van de getallen klikt. Zet voor het getal 'page ' zodat duidelijker is wat de link doet.
Op pagina https://cossas-project.org/software komt een link voor (de afbeelding van de laptop). Deze link heeft geen toegankelijk linkdoel. Bezoekers die gebruik maken van hulpsoftware weten daardoor niet waar de link naar verwijst. Aangezien de link dubbel geplaatst is, kan de link in dit geval beter verwijderd worden zodat links niet dubbel worden voorgelezen.
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: Voldoende
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: Onvoldoende
Bevindingen: Het is voor bezoekers die met het toetsenbord over de website navigeren, maar het scherm wél kunnen zien, niet duidelijk waar zij zich bevinden, omdat een zichtbare focusstijl op het merendeel van alle interactieve elementen. Zorg ervoor dat bezoekers weten waar ze zich bevinden door een zichtbare focusrand toe te voegen die voldoende contrasteert met de achtergrond (dit kan dus per element verschillen).
Bij navigatie met het toetsenbord is na de link 'GITHUB' rechts boven aan elke pagina er een link buiten beeld naar '#' die focus krijgt. Bezoekers die met behulp van het toetsenbord navigeren weten hierdoor niet zien welk element focus heeft. Zorg er voor dat elementen die niet in beeld zijn geen focus kunnen krijgen.
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: Op pagina cossas-project.org/contact/ is er een link naar Slack. De toegankelijke naam van de link 'on our Slack workspace' komt niet overeen met de zichtbare naam van de link 'Join the discussion on our Slack workspace'. Hierdoor is onder andere de knop niet of moeilijk te bedienen met spraaksoftware. Zorg ervoor dat de visuele naam in de toegankelijke naam aanwezig is.
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: Voldoende
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: Voldoende
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: Voldoende
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: De formuliervelden 'Your name', 'Your email' en 'Your message' op pagina cossas-project.org/contact/hebben geen zichtbaar label maar wel een placeholder-tekst. De placeholder-tekst is niet voldoende, want die verdwijnt zodra de bezoeker begint met typen. Voor sommige mensen kan het moeilijk zijn om te onthouden wat ze moeten invullen als dat er niet duidelijk bij staat. Voeg een label toe die altijd zichtbaar blijft om dit probleem op te lossen.
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: Niet aanwezig
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: De links onder het logo ‘Cossas open source security automation software’ hebben geen toegankelijke naam (bijvoorbeeld de link ‘Explore our software’). Hetzelfde probleem komt op meer plaatsen in de website voor, bijvoorbeeld op pagina 'cossas-project.org/?s=software' onder 'Jina Peterson' hebben de social media links geen naam, even als de pijl onderaan de pagina om naar de volgende zoekresultaten te gaan.
De knoppen om de zoekfunctie in het navigatiemenu bovenaan iedere pagina te openen en te sluiten hebben geen toegankelijke naam en rol.
Op pagina https://cossas-project.org/software komt een link voor (de afbeelding van de laptop). Deze link heeft geen toegankelijke naam. Aangezien de link dubbel geplaatst is, kan de link in dit geval beter verwijderd worden zodat links niet dubbel worden voorgelezen.
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: Voldoende
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://cossas-project.org/
- https://cossas-project.org/contact/
- https://cossas-project.org/?s=software
- https://cossas-project.org/404
- https://cossas-project.org/portfolio/sacti/
- https://cossas-project.org/accessibility/
- https://cossas-project.org/mission/
- https://cossas-project.org/software/
- https://cossas-project.org/partner-software/
- https://cossas-project.org/community/how-to-contribute/
- https://cossas-project.org/quality-assurance/
- https://cossas-project.org/portfolio/dgad/
Ondersteunende technieken
Webbrowsers (useragents) en andere software
Bij dit onderzoek is de volgende software gebruikt:- Chrome, versie 108
- Firefox, versie 108
- Edge, versie 108
- NVDA 2022
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.