Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
:focus
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
Lapseudo-classeCSS:focus permet de cibler un élément lorsque celui-ci reçoit le focus (soit il est sélectionné à l'aide du clavier, soit il est activé avec la souris comme par exemple le champ d'un formulaire).
Dans cet article
Exemple interactif
label { display: block; margin-top: 1em;}input:focus { background-color: lightblue;}select:focus { background-color: ivory;}<form> <p>Quelle saveur souhaitez-vous commander ?</p> <label>Nom complet : <input name="firstName" type="text" /></label> <label >Saveur : <select name="flavor"> <option>Cerise</option> <option>Thé vert</option> <option>Vanille et beurre salé</option> <option>Pépites de menthe</option> </select> </label></form>Note :Cette pseudo-classe s'applique uniquement à l'élément ayant le focus lui-même. Utilisez:focus-within si vous souhaitez sélectionner un élément quicontient un élément ayant le focus.
Syntaxe
:focus { /* ... */}Accessibilité
Il faut s'assurer que l'indicateur visuel de focus puisse être vu par des personnes ayant une vision faible. Cela pourra d'autant plus bénéficier aux personnes qui consultent le document dans un endroit fortement éclairé (dehors au soleil par exemple). La recommandationWCAG 2.1 SC 1.4.11 Non-Text Contrast(angl.) nécessite un contraste minimum de 3 à 1.
- Indicateurs visuels de focus accessibles :Conseils sur la conception d'indicateurs utiles et utilisables(angl.)
:focus { outline: none; }
Il ne faut jamais retirer l'indicateur de focus sans le remplacer par un autre indicateur qui respecte la recommandationWCAG 2.1 SC 1.4.11 Non-Text Contrast(angl.) :
Exemples
>HTML
<input value="Rouge si focus" /><input value="Bleu si focus" />CSS
.prenom:focus { background: yellow; color: red;}.nom:focus { background: yellow; color: blue;}Résultat
Spécifications
| Specification |
|---|
| HTML> # selector-focus> |
| Selectors Level 4> # focus-pseudo> |