Aller au contenu
SilktideAide

Rôle ARIA en conflit

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 sur 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 possède déjà ce rôle -->
<nav role="navigation">…</nav>

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

Pourquoi est-ce important ?

Chaque élément possède une signification intrinsèque sur laquelle s'appuient les . 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 : un utilisateur de 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 problématiques, mais ils ajoutent du bruit, favorisent de futures erreurs et indiquent qu'ARIA est utilisé alors qu'il n'est pas nécessaire.

Comment le corriger

  1. Pour un rôle en conflit, supprimez le rôle ou utilisez un élément qui possède 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. Recherchez chaque élément de la page doté d'un attribut role, en ignorant les rôles inconnus ou abstraits (ils sont signalés par Rôle ARIA non valide).
  2. Comparez le rôle aux combinaisons autorisées pour cet élément par la spécification ARIA in HTML, et signalez les rôles que l'élément n'autorise pas.
  3. Signalez les rôles qui dupliquent le rôle implicite de l'élément.
  4. Lorsqu'un attribut de rôle répertorie plusieurs rôles, seul le premier est pris en compte.

Les résultats distinguent les deux cas afin que vous puissiez prioriser les conflits par rapport aux redondances.

Résolution des problèmes

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

Les rôles de région explicites tels que 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 désormais 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 alors que 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 ?

Rôle ARIA en conflit | Centre d’aide Silktide