Quand utiliser l'attribut disabled plutôt que l'attribut aria-disabled pour les éléments HTML?
Je suis en train de faire un formulaire accessible. Dois-je faire mes entrées à la fois disabled
et aria-disabled
attributs, ou seulement un seul?
<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" disabled>
Ou comme cela?
<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" aria-disabled="true">
Ou comme cela?
<label for="textbox1">Input</label>
<input id="textbox1" type="text" name="Text Box" aria-disabled="true" disabled>
source d'informationauteur Ralph David Abernathy
Vous devez vous connecter pour publier un commentaire.
Je peux prendre votre exemple, mettre dans un CodePenet de vérifier dans JAWS et NVDA (désolé, pas de VoiceOver aujourd'hui):
Vous serez heureux de savoir que ces deux NVDA et des MÂCHOIRES ignorer le champ (ou si concentré explicitement, de vous annoncer qu'est désactivé).
En bref, vous ne pas besoin
aria-disabled
plus longtemps. Utilisez simplementdisabled
.Vous pouvez lire un peu plus sur les attributs ARIA vous pouvez vider dans cet article par Steve Faulkner (l'un des rédacteurs de l'ARIA spec) à partir de 2015 (si
aria-disabled
n'est pas explicitement, le concept est le même): http://html5doctor.com/on-html-belts-and-aria-braces/Si ma réponse ressemble à votre autre question sur
required
contrearia-required
c'est parce qu'elle est essentiellement la même réponse.Pour terminer @aardrian réponse.
Lorsque vous utilisez un contrôle HTML qui prend en charge nativement les
disabled
attribut, vous n'avez pas besoin de laaria-disabled
attribut.Si vous utilisez un contrôle personnalisé vous pouvez ensuite utiliser la
aria-disabled
attribut. Par exemple, dans le code suivant, le bouton "Pause" sera désactivé jusqu'à ce que le bouton "Jouer" est pressé (notre code javascript pour changer detabindex
etaria-disabled
attributs).Note que, selon le W3C:
Une distinction importante est que lors de l'utilisation de la voix sur l'élément avec juste le "désactivé" la propriété ne sera pas à onglets. Cependant l'élément avec aria-disabled="true" sera toujours en mesure de recevoir le focus et le rapport au lecteur d'écran en grisé.