420 votes

Élément de suppression HTML de l'index des onglets

J'ai un tas d'éléments sur le site qui peuvent être indexés dans un ordre logique.

Sur ma page, cependant, il y a un sideshow qui est rendu avec Jquery, quand vous faites un tabulation, vous obtenez beaucoup d'onglets avant que le contrôle de tabulation ne passe au lien visible suivant de la page puisque toutes les choses sont cachées. l'utilisateur visuellement.

Est-il possible en HTML de dire au navigateur de ne pas autoriser l'indexation des onglets sur des éléments particuliers?

679voto

Martin Points 4219

Vous pouvez utiliser tabindex="-1".

Le W3C HTML5 spécification prend en charge négatif tabindex valeurs:

Si la valeur est un entier négatif
L'agent utilisateur doit définir l'élément tabindex l'accent drapeau, mais ne devrait pas permettre à l'élément d'être atteint à l'aide séquentielle navigation de focus.


Watch out, bien que ce est une fonctionnalité HTML5 et peut ne pas fonctionner avec les anciens navigateurs.
Être norme W3C HTML 4.01 (à partir de 1999) compatible, tabindex aurait besoin d'être positif.

144voto

Eirik Points 342

N'oubliez pas que, même si tabindex est tout en minuscules dans les spécifications et dans le HTML, en Javascript / le DOM cette propriété est appelée tabIndex .

(Ne perdez pas votre esprit à essayer de comprendre pourquoi vos index de tabulation modifiés par programmation ne fonctionnent pas.)

14voto

user2719528 Points 1

Si ces éléments sont naturellement dans l'ordre des onglets, comme les boutons et les ancres, les supprimer de l'ordre de tabulation avec tabindex = -1 est une sorte d'odeur d'accessibilité. S'ils fournissent une fonctionnalité en double, les supprimer de l'ordre des onglets est correct, et envisager d'ajouter aria-hidden = true à ces éléments afin que les technologies d'assistance les ignorent.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X