Typ iets om te zoeken...

Wcag uitgelegd

Video zonder toegankelijke naam

Video zonder toegankelijke naam — WCAG 4.1.2 Naam, rol, waarde (post 11/12)

Een instructievideo op je pagina. Met het controls-attribuut: play, pauze, volume, fullscreen. Allemaal aanwezig.

Een schermlezer zegt: “Video.” Welke video? Waarover? Geen idee.

<!-- Niet doen: video zonder naam -->
<video controls src="instructie.mp4"></video>

<!-- Wel doen: aria-label -->
<video controls src="instructie.mp4"
       aria-label="Instructievideo: account aanmaken"></video>

<!-- Of: koppelen aan een zichtbare titel -->
<h2 id="video-titel">Instructievideo: account aanmaken</h2>
<video controls src="instructie.mp4"
       aria-labelledby="video-titel"></video>

Waarom vergeten developers dit?

Omdat het <video>-element visueel voor zich spreekt. Je ziet de thumbnail. Je ziet de context op de pagina. Maar een schermlezer ziet alleen: “Video.”

Dit geldt ook voor <audio>:

<audio controls src="podcast.mp3"
       aria-label="Podcast aflevering 12: toegankelijkheid in de praktijk">
</audio>

Eén attribuut. Tien seconden werk. Het verschil tussen “Video” en “Instructievideo: account aanmaken.”

Zelf verder met dit onderwerp

Related Posts

Tabs zonder tablist

Tabs zonder tablist

Twee elementen met role="tab". Een element met role="tabpanel". Maar geen role="tablist".

Knop die navigeert, link die een actie uitvoert

Knop die navigeert, link die een actie uitvoert

“Contact, knop.” Je drukt op Enter. Een nieuwe pagina opent. Maar het was een knop. Knoppen voeren acties uit. Ze navigeren niet.

Heading in een summary: zelfde probleem

Heading in een summary: zelfde probleem

Net als bij een button: een <summary> heeft de impliciete rol van een button. En een button eet de rollen van zijn kinderen op.