-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUGFIX] Réordonnancement des fieldset
legend
de Modulix (PIX-12382)
#8835
Conversation
Une fois les applications déployées, elles seront accessibles via les liens suivants : Les variables d'environnement seront accessibles via les liens suivants : |
00e0c97
to
b2d5efb
Compare
Est-ce que le test via https://validator.w3.org/ est valide ? étant donné que tous les grains ne sont pas affichés d'un coup au lancement de la page |
Je l'ai pas retesté avec 100% du contenu de Modulix effectivement. Dans le 3ème onglet de w3c validator, tu peux copier/coller des bouts de code, c'est comme ça qu'on a conclu à notre erreur https://validator.w3.org/#validate_by_input. |
Ah bah en plus j'apprends des trucs ^^ |
b2d5efb
to
19f6e8d
Compare
Du coup j'ai retesté, c'est aussi interdit d'avoir une balise <fieldset>
<legend><p>coucou</p></legend>
<p>truc</p>
</fieldset> Les balises qu'on a le droit d'utiliser sont du "phrasing content" et référencées ici : https://html.spec.whatwg.org/multipage/dom.html#phrasing-content-2 :( |
19f6e8d
to
da9ca66
Compare
// eslint-disable-next-line no-restricted-imports | ||
import { click, find } from '@ember/test-helpers'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je ne sais pas comment récupérer le formulaire pour vérifier la valeur de son aria-describedby
avec testing library... Preneur de mieux !
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Une PR est en cours sur le repo de testing-library sur le sujet.
A11yance/aria-query#547
C'est lié à ce bug-ci
testing-library/dom-testing-library#1293
D'ici là, la doc ne semble pas proposer d'alternatives qui puissent convenir.
Faute de mieux, ce que tu proposes me convient. Peut-être mettre un commentaire au-dessus de la ligne 31 avec le lien vers la PR de testing-library ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pour info j'avais eu un process de pensée un peu différent. Sur MDN form
n'a le rôle form
que si il est décrit par un nom accessible, j'imagine que la complexité d'implémentation côté testing-library vient de là.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yannbertrand ils entendent quoi par un nom accessible ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
J'ai pas lu mais la définition est linkée dans MDN, ça renvoie là : https://www.w3.org/TR/accname-1.1/#dfn-accessible-name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
merci, c'est très clair maintenant :) https://www.w3.org/TR/accname-1.1/#dfn-accessible-name:~:text=A%20simple%20use,or%20%22OK%20button%22.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Encore plus clair après notre discussion (après avoir lu mdn).
Par défaut la balise form
n'a pas le rôle form
. Le debugger d'accessibilité Firefox ne le constate pas, mais c'est bien visible sur Chrome qui annonce un role "Section".
On peut la faire devenir un form
soit :
- avec un
role="form"
. VoiceOver ne dira rien de plus. - avec un
title="xxx"
, VoiceOver annonce "xxx, group". - avec un
aria-label="xxx"
, VoiceOver annonce "xxx, group". - avec un
aria-labelledby="xxx"
, VoiceOver annonce "xxx, group".
Ces 4 méthodes permettent d'utiliser le getByRole('form')
de testing-library.
da9ca66
to
20356b8
Compare
20356b8
to
ecb612d
Compare
J'ai tester avec VoiceOver pour voir le comportement de |
ecb612d
to
31e380c
Compare
Il y a doublon sur "Sélectionner une seule réponse" alors ? Le second est sensé ne pas être lu avec |
ahh oui - j'ai pas vu le |
edit: not related to the problem |
|
Oui - tu as raison - il n y a rien a voir (on peut ignorer le comment :P) J'ai retester ce matin et j'ai le meme resultat avec Wave qui dit que c'est bien |
Revue ensemble, ce n'est pas la En fait le Par contre on est pas certain de pourquoi |
31e380c
to
f6ee965
Compare
🦄 Problème
On a une erreur d’accessibilité (non détectée par Wave).
La balise
legend
doit être descendant direct dufieldset
et ne pas avoir de wrapper. Nous avons des wrapperselement-qrocm__header
,element-qcu__header
etelement-qcm__header
qu’il faut donc supprimer.🤖 Proposition
legend
dans unediv
,aria-describedby
Source : cet échange.
🌈 Remarques
Tout ça est testable avec le validateur du W3C, voir : https://stackoverflow.com/questions/18065565/is-it-valid-html-to-add-a-link-to-a-fieldset-legend.
💯 Pour tester
Vérifier visuellement que rien n'a changé.
Vérifier au lecteur d'écran que le
legend
est correctement lu à la tabulation. Je n'ai pas réussi à le confirmer personnellement.