--- 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. |