Mettre un attribut border
sur un tableau de données
Langue du lien : Anglais
Cela peut sembler aller dans le sens contraire de la norme car l’attribut border
est obsolète mais c’est pourtant un vrai plus pour l’accessibilité d’un tableau de données (et non pas pour un tableau de présentation). En effet, aujourd’hui, la balise <table>
et ses cellules <td>
n’ont plus de bordure par défaut. Par conséquent, même si on les rétablit via CSS, il est possible que ce soit gênant pour certaines personnes qui, par exemple, désactivent les feuilles de style.
Ainsi, en ajoutant un attribut border
(sans valeur) ou border="1"
sur un tableau de données, on permet à ce tableau de s’afficher avec des bordures et à tout le monde de lire correctement le tableau peu importe le contexte d’affichage.
Voici la citation issue de la spécification HTML 5.1 du W3C :
The border
content attribute may be specified on a table
element to explicitly indicate that the table
element is not being used for layout purposes. If specified, the attribute’s value must either be the empty string or the value « 1
″. The attribute is used by certain user agents as an indication that borders should be drawn around cells of the table.
Note : Officiellement, il ne s’agit pas d’une technique valide selon le RGAA (critère 10.1) mais avec une explication comme celle-ci, un examinateur ou une examinatrice n’aurait, a priori, pas vraiment de raison de désapprouver.
À noter par ailleurs, que le validateur de code HTML remonte également une erreur mais celui-ci s’appuie sur la version HTML du WHATWG et non celle du W3C.
Merci à Romain Gervois pour cette astuce.