CSS - Focus : Guide pour débutants
Salut là, futur superstar du design web ! Aujourd'hui, on va plonger dans l'univers passionnant du focus CSS. Ne t'inquiète pas si tu n'as jamais écrit une ligne de code auparavant - je serai ton guide amical tout au long de ce voyage. À la fin de ce tutoriel, tu sauras mettre en focus des éléments comme un pro !
Qu'est-ce que le focus CSS ?
Commençons par les bases. Le focus CSS est une pseudoclasse qui nous permet de styliser un élément lorsqu'il reçoit le focus. Mais qu'est-ce que signifie "recevoir le focus" ? Eh bien, imagine que tu remplis un formulaire en ligne. Quand tu clique sur un champ de saisie, il est mis en surbrillance ou change d'une certaine manière. C'est l'action du focus !
Le focus est incroyablement important pour l'accessibilité. Il aide les utilisateurs, en particulier ceux qui naviguent avec un clavier, à comprendre avec quel élément ils interagissent actuellement.
Elements concernés
Avant de commencer à styliser, il est crucial de savoir quels éléments peuvent vraiment recevoir le focus. Voici un tableau pratique :
Elements focusables |
---|
Liens (<a> ) |
Boutons |
Champs de formulaire |
Menus déroulants |
Textarea |
Éléments de sélection |
Souviens-toi, tous les éléments HTML ne peuvent pas recevoir le focus par défaut. Mais ne t'inquiète pas, on couvrira comment rendre d'autres éléments focusables plus tard !
Syntaxe
Maintenant, regardons comment on écrit réellement le focus CSS. La syntaxe de base est super simple :
element:focus {
/* Tes styles ici */
}
Voyez ce deux-points avant "focus" ? C'est ce qui le rend une pseudoclasse. C'est comme dire, "Hey CSS, applique ces styles lorsque cet élément est en focus !"
Focus CSS - Lien
Commençons par un cas d'utilisation commun : styliser un lien focusé. Voici un exemple :
a:focus {
color: #ff6600;
text-decoration: underline;
outline: 2px solid #ff6600;
}
Dans ce code, lorsqu'un lien reçoit le focus :
- Sa couleur change en orange vif (#ff6600)
- Il est souligné
- Un contour solide orange de 2 pixels apparaît autour
Cela rend super clair quel lien est actuellement focusé, améliorant l'accessibilité et l'expérience utilisateur.
Focus CSS - Bouton
Les boutons sont un autre élément où les styles de focus sont cruciaux. styling un bouton :
button:focus {
background-color: #4CAF50;
color: white;
box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.5);
}
Lorsque ce bouton reçoit le focus :
- Son arrière-plan devient vert (#4CAF50)
- Le texte devient blanc
- Un "halo" vert semi-transparent apparaît autour
Cela crée un état de focus visuellement attractif et clair pour notre bouton.
Focus CSS - Champ de saisie
Les champs de saisie sont où le focus brille vraiment. Voici comment nous pourrions styliser un champ focusé :
input:focus {
border: 2px solid #3498db;
background-color: #e8f4fc;
outline: none;
}
Dans cet exemple :
- La bordure devient un trait solide bleu de 2 pixels (#3498db)
- L'arrière-plan change en bleu clair (#e8f4fc)
- Le contour par défaut est supprimé
Astuce pro : Fournis toujours un indicateur visuel clair lorsque tu supprimes le contour par défaut. Sinon, les utilisateurs de clavier pourraient perdre la trace de leur focus !
Focus CSS - Menu déroulant
Les menus déroulants (ou éléments de sélection) peuvent également être stylisés sur focus :
select:focus {
border-color: #9b59b6;
box-shadow: 0 0 0 2px rgba(155, 89, 182, 0.2);
}
Ici, lorsque le menu déroulant est focusé :
- La couleur de la bordure change en violet (#9b59b6)
- Un "halo" violet clair apparaît autour
Ce changement subtil aide les utilisateurs à comprendre avec quel menu déroulant ils interagissent.
Focus CSS - Bouton à bascule
Les boutons à bascule sont un peu spéciaux. Nous voulons souvent les styliser différemment lorsqu'ils sont à la fois focusés et cochés. Voici comment :
.toggle:focus {
outline: 2px solid #3498db;
}
.toggle:focus:checked {
outline-color: #e74c3c;
}
Dans ce code :
- Lorsque le bouton est focusé, il reçoit un contour bleu
- Si c'est à la fois focusé et coché, le contour devient rouge
Cela aide les utilisateurs à comprendre à la fois l'état de focus et l'état de bascule.
Propriétés associées
Il existe plusieurs propriétés CSS couramment utilisées avec le focus. Voici un tableau des plus utiles :
Propriété | Description |
---|---|
outline | Crée une ligne autour de l'élément |
box-shadow | Ajoute un effet d'ombre à l'élément |
border | Définit la bordure de l'élément |
background | Définit l'arrière-plan de l'élément |
color | Change la couleur du texte |
text-decoration | Ajoute une décoration au texte (comme un soulignement) |
Souviens-toi, tu peux combiner ces propriétés pour créer des styles de focus uniques et accessibles !
Conclusion
Et voilà, les amis ! Tu viens de faire tes premiers pas dans l'univers du focus CSS. Souviens-toi, de bons styles de focus ne sont pas seulement là pour rendre les choses jolies - ils créent un web inclusif et accessible pour tout le monde.
Alors que tu continues ton voyage de codage, garde toujours l'accessibilité à l'esprit. Ce n'est pas un plus, c'est une partie cruciale du développement web. Et qui sait ? Tes styles de focus pourraient juste rendre la journée de quelqu'un un peu plus facile.
Continue à pratiquer, reste curieux, et surtout, amuse-toi ! CSS est ton terrain de jeu, et le focus n'est qu'un des nombreux jouets passionnants avec lesquels tu peux jouer. Bon codage !
Credits: Image by storyset