Table des matières
Activer :focus uniquement sur l'utilisation du clavier (ou sur la pression de la tabulation)
Aperçu
Solution originale : styles de focus pour le clavier uniquement
Solution améliorée : : pseudo-classe focus-visible
Compatibilité ascendante
Exemple CSS :
Exemple HTML :
Remarques :
Conclusion
Maison interface Web tutoriel CSS Comment activer : se concentrer uniquement sur l'utilisation du clavier (ou sur la pression de tabulation) ?

Comment activer : se concentrer uniquement sur l'utilisation du clavier (ou sur la pression de tabulation) ?

Oct 29, 2024 pm 11:55 PM

How to Enable :focus Only on Keyboard Use (or Tab Press)?

Activer :focus uniquement sur l'utilisation du clavier (ou sur la pression de la tabulation)

Aperçu

La désactivation de :focus lorsqu'il n'est pas nécessaire peut améliorer l'expérience utilisateur en éliminant indices visuels déroutants. Cependant, il est essentiel de maintenir la fonctionnalité de focus pour les utilisateurs de clavier.

Solution originale : styles de focus pour le clavier uniquement

La solution de Roman Komarov utilise CSS et HTML pour obtenir des styles de focus pour le clavier uniquement. Il encapsule les éléments focalisables dans un élément conteneur et stylise uniquement l'élément interne, laissant l'état de focus visuellement accessible aux utilisateurs du clavier.

Solution améliorée : : pseudo-classe focus-visible

Mise à jour : La pseudo-classe :focus-visible offre un moyen plus élégant et plus efficace d'obtenir des styles de focus uniquement sur le clavier. Les navigateurs indiquent désormais le focus uniquement lorsque cela améliore l'expérience utilisateur, par exemple lors d'une interaction avec le clavier.

Pour utiliser :focus-visible, remplacez :focus par :focus-visible dans vos règles CSS. Cela garantit que les styles de mise au point ne sont visibles que lorsqu'ils sont activés par le clavier ou des appareils sans pointage.

Compatibilité ascendante

Les navigateurs qui ne prennent pas en charge :focus-visible afficheront la bague de mise au point par défaut. Pour offrir une expérience utilisateur cohérente, Šime Vidas suggère de définir des styles de focus dans :focus et de les inverser dans :focus:not(:focus-visible).

Exemple CSS :

<code class="css">button:focus {
  outline: none;
  background: #ffdd00;
}

button:focus:not(:focus-visible) {
  background: white;
}</code>
Copier après la connexion

Exemple HTML :

<code class="html">&lt;button class=&quot;btn&quot;&gt;
  &lt;span class=&quot;btn__content&quot; tabindex=&quot;-1&quot;&gt;...&lt;/span&gt;
&lt;/button&gt;</code>
Copier après la connexion

Remarques :

  • Utilisez l'attribut tabindex pour rendre les éléments non focalisables focalisables.
  • Assurez-vous que votre CSS est suffisamment spécifique pour remplacer les styles de focus par défaut .
  • Envisagez d'utiliser :focus-within pour styliser l'élément parent lorsque son enfant est focus.

Conclusion

En tirant parti de la pseudo-classe :focus-visible ou En mettant en œuvre la solution originale, les développeurs peuvent fournir des styles de focus uniquement sur le clavier sans compromettre l'expérience utilisateur pour les utilisateurs de clavier et de souris.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Ajout d'ombres de boîte aux blocs et éléments WordPress Ajout d'ombres de boîte aux blocs et éléments WordPress Mar 09, 2025 pm 12:53 PM

Ajout d'ombres de boîte aux blocs et éléments WordPress

Créez un formulaire de contact JavaScript avec le cadre Smart Forms Créez un formulaire de contact JavaScript avec le cadre Smart Forms Mar 07, 2025 am 11:33 AM

Créez un formulaire de contact JavaScript avec le cadre Smart Forms

Créer un éditeur de texte en ligne avec l'attribut satisfaistable Créer un éditeur de texte en ligne avec l'attribut satisfaistable Mar 02, 2025 am 09:03 AM

Créer un éditeur de texte en ligne avec l'attribut satisfaistable

Travailler avec GraphQL Caching Travailler avec GraphQL Caching Mar 19, 2025 am 09:36 AM

Travailler avec GraphQL Caching

Faire votre première transition Svelte personnalisée Faire votre première transition Svelte personnalisée Mar 15, 2025 am 11:08 AM

Faire votre première transition Svelte personnalisée

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres) Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres) Mar 04, 2025 am 10:22 AM

Comparaison des 5 meilleurs constructeurs de formulaires PHP (et 3 scripts libres)

Téléchargement de fichiers avec Multer dans Node.js et Express Téléchargement de fichiers avec Multer dans Node.js et Express Mar 02, 2025 am 09:15 AM

Téléchargement de fichiers avec Multer dans Node.js et Express

Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement) Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement) Mar 01, 2025 am 09:32 AM

Meilleures animations et effets CSS sur Codecanyon 2025 (payé gratuitement)

See all articles