Passer au contenu
SilktideAide

Rôle ARIA conflictuel

Silktide vérifie les éléments qui déclarent un rôle explicite par rapport à la signification qu’ils ont déjà en HTML. Il signale les rôles qui ne sont pas autorisés pour cet élément, ainsi que les rôles qui ne font que répéter ce que l’élément signifie déjà.

<!-- Problème : un élément nav ne peut pas être un bouton -->
<nav role="button">…</nav>

<!-- Problème : redondant, nav a déjà ce rôle -->
<nav role="navigation">…</nav>

<!-- Correction : laissez l’élément parler de lui-même -->
<nav>…</nav>

Pourquoi c’est important

Chaque élément a une signification intégrée sur laquelle les s’appuient. Un rôle qui entre en conflit avec cette signification crée un élément qui ressemble à une chose et s’annonce comme une autre — une personne qui utilise un pourrait entendre « lien » pour un élément qui se comporte comme un bouton, avec des raccourcis clavier et des attentes qui ne correspondent plus. Les rôles redondants sont moins nuisibles, mais ils ajoutent du bruit, favorisent les erreurs futures et indiquent que ARIA est utilisé là où ce n’est pas nécessaire.

Comment corriger le problème

  1. Pour un rôle conflictuel, supprimez le rôle ou utilisez plutôt un élément qui a réellement la signification souhaitée — s’il doit agir comme un bouton, utilisez <button>.
  2. Pour un rôle redondant tel que <nav role="navigation"> ou <button role="button">, supprimez l’attribut de rôle. L’élément expose déjà ce rôle par lui-même.

Comment Silktide effectue cette vérification

  1. Trouver chaque élément de la page ayant un attribut role, en ignorant les rôles inconnus ou abstraits (ceux-ci sont signalés par Rôle ARIA non valide).
  2. Comparer le rôle aux combinaisons que la spécification ARIA in HTML autorise pour cet élément, et signaler les rôles que l’élément ne permet pas.
  3. Signaler les rôles qui reproduisent le rôle implicite de l’élément.
  4. Lorsqu’un attribut de rôle énumère plusieurs rôles, seul le premier est pris en compte.

Les résultats distinguent les deux cas afin que vous puissiez prioriser les conflits plutôt que la redondance.

Dépannage

Le rôle redondant est présent pour les anciens navigateurs

Les rôles de repère explicites comme role="navigation" étaient autrefois recommandés comme filet de sécurité pour les anciennes technologies d’assistance. La prise en charge des éléments natifs est universelle depuis des années, et le rôle dupliqué coûte maintenant davantage en maintenance qu’il ne rapporte. Supprimez-le ou le résultat si votre politique de prise en charge exige de le conserver.

Cette vérification ne signale rien, même si je m’attends à des résultats

Les vérifications ARIA peuvent être désactivées pour chaque site Web. Consultez les paramètres avancés du site Web.

En savoir plus

Dernière mise à jour

Cette page vous a-t-elle été utile?