--- title: Pseudo-classes slug: Web/CSS/Pseudo-classes tags: - CSS - Intermédiaire - Pseudo-classe - Reference - Sélecteur translation_of: Web/CSS/Pseudo-classes ---
Une pseudo-classe est un mot-clé qui peut être ajouté à un sélecteur afin d'indiquer l'état spécifique dans lequel l'élément doit être pour être ciblé par la déclaration. La pseudo-classe {{cssxref(":hover")}}, par exemple, permettra d'appliquer une mise en forme spécifique lorsque l'utilisateur survole l'élément ciblé par le sélecteur (changer la couleur d'un bouton par exemple).
div:hover {
background-color: #F89B4D;
}
Les pseudo-classes permettent d'appliquer un style à un élément non seulement en fonction de son contenu dans l'arbre du document mais aussi en fonction de facteurs externes (l'historique de navigation par exemple avec {{cssxref(":visited")}} ; le statut du contenu avec {{cssxref(":checked")}} ; la position de la souris {{cssxref(":hover")}}).
Note: À la différence des pseudo-classes, les pseudo-éléments peuvent être utilisés afin d'appliquer un style sur une certaine partie d'un élément.
sélecteur:pseudo-classe {
propriété: valeur;
}
À l'instar des classes, on peut chaîner plusieurs pseudo-classes au sein d'un sélecteur.
.survol:hover {
background-color: palegreen;
}
p:nth-child(2n+1) {
background-color: lime;
}
<div>
<p class="survol">
La Reine devint pourpre de colère ; et après
l’avoir considérée un moment avec des yeux
flamboyants comme ceux d’une bête fauve, elle
se mit à crier : « Qu’on lui coupe la tête ! »
</p>
<p>
« Quelle idée ! » dit Alice très-haut et d’un
ton décidé. La Reine se tut.
</p>
<p>
Le Roi lui posa la main sur le bras, et lui
dit timidement : « Considérez donc, ma chère
amie, que ce n’est qu’une enfant. »
</p>
</div>
{{EmbedLiveSample("Exemples","250","350")}}
| Spécification | État | Commentaires |
|---|---|---|
| {{SpecName('Fullscreen')}} | {{Spec2('Fullscreen')}} | Définition de :fullscreen. |
| {{SpecName('HTML WHATWG', '#pseudo-classes')}} | {{Spec2('HTML WHATWG')}} | Définit lorsque des sélecteurs particuliers correspondent à des éléments HTML. |
| {{SpecName('CSS4 Selectors')}} | {{Spec2('CSS4 Selectors')}} |
Définition de Changement afin que Aucune modification significative pour les pseudo-classes définies avec {{SpecName('CSS3 Selectors')}} et {{SpecName('HTML5 W3C')}}. |
| {{SpecName('HTML5 W3C')}} | {{Spec2('HTML5 W3C')}} | Copie les éléments pertinents de la spécification HTML WHATWG |
| {{SpecName('CSS3 Basic UI')}} | {{Spec2('CSS3 Basic UI')}} | Définition de :default, :valid, :invalid, :in-range, :out-of-range, :required, :optional, :read-only et :read-write, mais sans la sémantique associée. |
| {{SpecName('CSS3 Selectors')}} | {{Spec2('CSS3 Selectors')}} | Définition de :target, :root, :nth-child(), :nth-last-of-child(), :nth-of-type(), :nth-last-of-type(), :last-child, :first-of-type, :last-of-type, :only-child, :only-of-type, :empty et :not().Définition de la syntaxe pour :enabled, :disabled, :checked et :indeterminate, mais sans la sémantique associée.Pas de modification significative pour les pseudo-classes définies avec {{SpecName('CSS2.1')}}. |
| {{SpecName('CSS2.1')}} | {{Spec2('CSS2.1')}} | Définition de :lang(), :first-child, :hover et :focus.Aucune modification significative pour les pseudo-classes définies avec {{SpecName('CSS1')}}. |
| {{SpecName('CSS1')}} | {{Spec2('CSS1')}} | Définition de :link, :visited et :active, mais sans la sémantique associée. |