ID aria-errormessage manquant
Silktide vérifie chaque attribut aria-errormessage sur vos pages et confirme que l’ID de l’élément auquel il fait référence existe réellement. Cet attribut associe un champ de formulaire au message qui explique ce qui ne va pas avec la valeur saisie dans ce champ.
<!-- Problème : aucun élément de la page n’a id="email-error" -->
<input type="email" aria-invalid="true" aria-errormessage="email-error">
Pourquoi c’est important
Lorsqu’un champ de formulaire est marqué comme non valide, l’attribut
aria-errormessage d’ indique aux
où se trouve
l’explication. Si la référence est brisée, une personne utilisant un
est avisée que sa saisie est
incorrecte, mais n’entend jamais pourquoi. Elle doit alors deviner les formats et
exigences que les personnes voyantes peuvent lire à l’écran, et peut abandonner le formulaire
complètement.
Comment corriger le problème
- Faites en sorte que l’attribut fasse référence à l’
idde l’élément contenant le message d’erreur visible pour le champ. - Associez-le à
aria-invalid="true"sur le champ tant que l’erreur s’applique :aria-errormessagen’est annoncé que pour les champs non valides. - Assurez-vous que l’élément référencé contient du texte lisible chaque fois que l’erreur est affichée, et qu’il est vide ou masqué lorsqu’elle ne l’est pas.
Comment Silktide effectue cette vérification
- Repérez chaque élément de la page qui possède un attribut
aria-errormessage. - Comparez l’ID auquel il fait référence aux ID des éléments présents sur la page.
- Signalez chaque référence qui ne correspond à aucun élément.
Dépannage
L’élément d’erreur est ajouté seulement lorsque la validation échoue
Silktide analyse la page au moment de son chargement. Il est préférable de conserver le conteneur d’erreur en permanence dans la page (vide ou masqué jusqu’à ce qu’il soit nécessaire) afin que la référence soit toujours résolue et que l’annonce fonctionne dès que l’erreur apparaît.
Cette vérification ne signale rien, même si je m’attends à des résultats
Les tests ARIA peuvent être désactivés pour chaque site Web. Vérifiez les réglages avancés du site Web.