Role en aria

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lord Gaga

Lord Gaga

13/02/2015 22:41:21
Quote Anchor link
Hallo,

Ik ben me wat meer aan het verdiepeing in de role en aria-* attributen, maar ik kan nergens vinden wanneer je dit nou wel of juist niet gebruikt. Vaak zie ik dingen voorbij komen als:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<header role="banner"></header>
<nav role="navigation"></nav>
<main role="main"></main>
<footer role="contentinfo"></footer>


Maar op de website van W3C staat dat dit de default waardes zijn en je deze dus niet nog eens hoeft aan te geven. Waarom wordt dat dan wel vaak gedaan, en waarom juist bij deze 4 elementen?

Alvast bedankt!
 
PHP hulp

PHP hulp

25/12/2024 04:21:04
 
Wouter J

Wouter J

14/02/2015 00:14:09
Quote Anchor link
Met een role attribute kun je de HTML parser duidelijk maken wat het element voorstelt, in het geval het element zelf nog niet de juiste semantische waarde bevat.

Bijvoorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<a href="#" class="btn  btn-primary" role="button">Next</a>


In deze code gebruiken we een link element (<a>), maar het stelt een button voor. Door het de role "button" mee te geven zorgen we dat de parsers het als een button aanzien.
Dit is vooral belangrijk voor screen readers.

Hoewel bijna elk element al een standaard role krijgt, kan dit bij nieuwe elementen nog niet het geval zijn. De elementen die jij noemt zijn bijv. nieuwe HTML5 elementen. Het kan zijn dat de huidige screenreader deze elementen nog niet herkend en dus nog niet een standaard role geeft. Door ze expliciet te definiëren weet de screenreader de role dus wel. Over een paar jaar is dit dus niet meer nodig.
 
Lord Gaga

Lord Gaga

14/02/2015 00:18:06
Quote Anchor link
Ah oke, dat is duidelijk. En is er ook een reden waarom aria-* dan bijvoorbeeld niet wordt gebruikt bij het article element? (<article role="article">) Want deze lijkt me ook vrij nieuw.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.