#12960 - Combinateurs et pseudo-classes CSS
Attention, si les pseudo-classes sont bien avec un seul double-point « : », les pseudo-éléments doivent désormais en porter deux : « :: ».
On met donc « element::before » ou « element::after ».
C’est logique : les pseudo-classes constituent des variantes d’un élément existant (hover [variante « sous la souris »], nth-of-type [variante « le énième élément »]…), alors qu’un pseudo élément est un élément à part entière (le element::before est stylisé indépendamment de l’élément lui-même : il se comporte donc comme un élément, pas une classe). Logique, donc, de les différentier.
À ce titre également, les pseudo classes et pseudo-élements n’ont pas la même spécificité.
Les navigateurs continuent *pour le moment* de détecter les pseudo-éléments avec un seul double point, mais selon les spécifications, ils n’y sont pas tenus.
(via)
On met donc « element::before » ou « element::after ».
C’est logique : les pseudo-classes constituent des variantes d’un élément existant (hover [variante « sous la souris »], nth-of-type [variante « le énième élément »]…), alors qu’un pseudo élément est un élément à part entière (le element::before est stylisé indépendamment de l’élément lui-même : il se comporte donc comme un élément, pas une classe). Logique, donc, de les différentier.
À ce titre également, les pseudo classes et pseudo-élements n’ont pas la même spécificité.
Les navigateurs continuent *pour le moment* de détecter les pseudo-éléments avec un seul double point, mais selon les spécifications, ils n’y sont pas tenus.
(via)