Pour poursuivre notre dossier spécial développeurs, notre deuxième épisode s’attarde cette fois-ci sur la mise en accessibilité d’un formulaire.
Particulièrement répandus, notamment dans les tunnels d’achat ou dans les inscriptions aux newsletters dans le e-commerce, les formulaires peuvent être assez ardus à traiter si les recommandations ne sont pas explicites.
Alors, afin d’éclaircir le sujet, voici en quelques étapes clés, tout ce qu’il faut savoir afin de développer des formulaires accessibles conformes WCAGWeb Content Accessibility Guidelines. Définition dans le glossaire. 2.1 et RGAARéférentiel Général d’Amélioration de l’Accessibilité. Définition dans le glossaire. 4.1.
Voici un formulaire à titre d’exemple :

Recommandations générales
- Tous les champs doivent avoir un label explicite.
- Tous les champs doivent recevoir le focus, et il doit être visible.
- Si un placeholder est utilisé, assurez vous que l’information transmise par le placeholder (aide à la saisie) reste visible lorsque l’utilisateur commence à taper. À noter tout de même que le placeholder ne remplace pas le label. Il faut donc ajouter un ariaAccessible Rich Internet Applications. Définition dans le glossaire. label pour que le label soit visible au lecteur d’écran.
- Tous les labels doivent être explicitement associés aux champs du formulaire :<label for= »p1″>First Name</label><input id= »p1″ …>
- Tous les éléments obligatoires doivent avoir une étoile et ariaAccessible Rich Internet Applications. Définition dans le glossaire.-required= »true ».
- S’il y a un label flottant, ne pas utiliser le placeholder, ajouter l’information au label : exemple :<label for …>Telephone (e.g., 0123456789)</label>
- Vérifier que les checkmarks sont vocalisées par le lecteur d’écran :<img src= »checkmark.jpg” alt= »green checkmark » ..>
- Ajouter l’autocomplete et le token :Web Content Accessibility Guidelines (WCAG) 2.1
- Pour le champ Select, suivre cette implémentation :HTML select tag
La gestion des erreurs
- Messages d’erreurs : associer le message d’erreur au champ adéquat via ariaAccessible Rich Internet Applications. Définition dans le glossaire.-describedby, et ajouter un lien en dessous du message d’erreur pour que les personnes qui utilisent des lecteurs d’écran n’aient pas à chercher le champ où l’erreur s’est produite.
- Messages d’erreurs : Mettre ariaAccessible Rich Internet Applications. Définition dans le glossaire.-live= »polite » pour avertir l’utilisateur de l’apparition d’un message d’erreur.
- Messages d’erreurs : Mettre ariaAccessible Rich Internet Applications. Définition dans le glossaire.-invalid lorsqu’une erreur est saisie, attention le ariaAccessible Rich Internet Applications. Définition dans le glossaire.-invalid ne doit apparaître dans le champ input que lorsque le champ est erroné.
- Assurez-vous que visuellement le message d’erreur et le champ du formulaire soient visibles.

Aria-live=polite et aria-live=assertive
Accessible Rich Internet Applications. Définition dans le glossaire.De manière générale, ariaAccessible Rich Internet Applications. Définition dans le glossaire.-live=polite est le plus souvent utilisé car le lecteur d’écran vocalise le message d’erreur une fois l’action de l’internaute terminée.
Pourtant, on peut retrouver l’attribut ariaAccessible Rich Internet Applications. Définition dans le glossaire.-live=assertive dans certaines situations précises. Il n’est utilisé de manière exceptionnelle que pour prévenir le lecteur d’un message qui arrive pendant son parcours de navigation classique car il va bloquer la lecture de l’utilisateur.
Pour aller plus loin, n’hésitez pas à contacter notre équipe experte en accompagnement Accessibilité Numérique et continuez à lire nos articles !
Si vous avez loupé, le contenu précédent sur la mise en conformité d’un player vidéo, c’est par ici : https://blog.ipedis.com/tech-comment-developper-un-player-video-e-accessible-en-5-etapes