Test 11.4.3
Chaque étiquette accolée à un champ de type checkbox ou radio ou à une balise ayant un attribut WAI-ARIA role="checkbox", role="radio" ou role="switch", vérifie-t-elle ces conditions (hors cas particuliers) ?
L’étiquette est visuellement accolée immédiatement au-dessous ou à droite du champ de formulaire lorsque le sens de lecture de la langue de l’étiquette est de gauche à droite.
L’étiquette est visuellement accolée immédiatement au-dessous ou à gauche du champ de formulaire lorsque le sens de lecture de la langue de l’étiquette est de droite à gauche.
Méthodologie 11.4.3
- Retrouver dans le document les champs de formulaire qui sont
<input>de typecheckboxou de typeradioou des éléments ayant un attribut WAI-ARIArole="checkbox",role="radio"ourole="switch". - Pour chaque champ de formulaire, vérifier que l’étiquette est visuellement accolée :
- Immédiatement au-dessous ou à droite du champ de formulaire lorsque le sens de lecture de la langue de l’étiquette est de gauche à droite.
- Immédiatement au-dessous ou à gauche du champ de formulaire lorsque le sens de lecture de la langue de l’étiquette est de droite à gauche.
- Si c’est le cas pour chaque champ de formulaire, le test est validé.
Tests suivants et précédents au clavier
Test précédent : Maj + ←
Test suivant : Maj + →
Éléments et attributs
checkbox radio role='checkbox' role='radio' role='switch' <input> Cas particuliers du critère 11.4
Les tests 11.4.2 et 11.4.3 seront considérés comme non applicables :
-
Dans le cas où l’étiquette mélange une portion de texte qui se lit de droite à gauche avec une portion de texte qui se lit de gauche à droite ;
-
Dans le cas où un formulaire contient des labels de plusieurs langues qui se liraient de droite à gauche et inversement. Par exemple, un formulaire de commande en arabe qui propose une liste de cases à cocher de produit en langue française ou mixant des produits en langue arabe ou en langue française ;
-
Dans le cas où les champs de type
radiooucheckboxet les balises ayant un attribut WAI-ARIArole="checkbox",role="radio"ourole="switch"ne sont pas visuellement présentés sous forme de bouton radio ou de case à cocher ; -
Dans le cas où les champs seraient utilisés dans un contexte où il pourrait être légitime, du point de vue de l’expérience utilisateur, de placer les étiquettes de manière différente à celle requise dans les tests 11.4.2 et 11.4.3.
Définitions
- Accolés (étiquette et champ accolés)
Il faut que l’étiquette et son champ soient visuellement proches de manière à ce que la relation entre les deux ne puisse pas prêter à confusion.
- Champ de saisie de formulaire
Objet d’un formulaire permettant à l’utilisateur :
- De saisir des données textuelles ou préformatées :
input type="text";input type="password";input type="search";input type="email";input type="number";input type="tel";input type="url";textarea.
- De sélectionner des valeurs prédéfinies :
input type="checkbox";input type="radio";input type="date";input type="range";input type="color";input type="time";input type="month";input type="week";input type="datetime-local";select;datalist;optgroup;option.
- De télécharger des fichiers :
input type="file".
- Ou d’afficher des résultats :
output;progress;meter.
- Les balises possédant un rôle WAI-ARIA permettant de restituer un champ de formulaire sont également couvertes par cette définition :
progressbar;slider;spinbutton;textbox;listbox;searchbox;combobox;option;checkbox;radio;switch.
- Les objets de formulaires et rôle WAI-ARIA suivants ne sont pas considérés comme des champs de formulaires :
input type="submit";input type="reset";input type="hidden";input type="image";input type="button";button;- attribut WAI-ARIA
role="button".
- De saisir des données textuelles ou préformatées :
- Étiquette de champ de formulaire
Texte à proximité du champ de formulaire permettant d’en connaître la nature, le type ou le format des informations attendues. L’étiquette peut être associée au champ de formulaire de plusieurs manières :
- Par l’utilisation d’une balise
<label>; - Par l’utilisation de l’attribut WAI-ARIA
aria-label; - Par l’utilisation d’une liaison entre le texte et le champ par l’attribut WAI-ARIA
aria-labelledby; - Par l’utilisation de l’attribut
title.
Note importante : lorsque plusieurs de ces techniques sont présentes sur un même champ, le calcul du « nom accessible », c’est-à-dire ce qui sera restitué, obéit à un ordre strict :
aria-labelledby;- Sinon
aria-label; - Sinon
<label>; - Sinon
title.
Cet ordre doit être utilisé pour l’évaluation de la pertinence de l’étiquette (critère 11.2). Par exemple, même dans le cas de la présence d’un
<label>, c’est le passage de texte référencé pararia-labelledbyqui doit être pris en compte.Référence : Accessible name and description calculation.
Note importante au sujet de l’utilisation de
placeholder: lorsque l’attributplaceholderest présent, il est susceptible d’être restitué à la place de l’attributtitle. Par conséquent, lorsque ces deux attributstitleetplaceholdersont présents, ils doivent être identiques.Note au sujet des étiquettes liées par
aria-labelledby: Il s’agit d’un ou de plusieurs passages de texte identifiés par desidet liés pararia-labelledbysur le modèle suivant :aria-labelledby="ID1 ID2 ID3…".Note : l’attribut
aria-labelne peut pas être utilisé pour indiquer le caractère obligatoire d’un champ.- Par l’utilisation d’une balise
- Formulaire
Un formulaire n’est pas obligatoirement contenu dans une balise
<form>ou une balise possédant un attribut WAI-ARIArole="form".