Pseudo-classe ou pseudo-élément ?
Vu qu'on utilise souvent le terme de pseudo-classe, lorsqu'on parle de styler des liens, on a tendance a appeler pseudo-classe tout ce qui commence par : dans un css.
Hors, il existe aussi des pseudo-éléments.
Le pseudo-classes en css 2.1
- La pseudo-classe :link s'applique aux liens qui n'ont pas été visités
- La pseudo-classe :visited s'applique lorsque le lien a été visité par l'utilisateur
- La pseudo-classe :hover, qui est appliquée quand l'utilisateur désigne un élément (au moyen d'un appareil de pointage) sans l'activer. Par exemple, un agent utilisateur visuel pourrait appliquer celle-ci quand le pointeur (d'une souris) survole la boîte produite par un élément.
- La pseudo-classe :active, qui est appliquée quand l'utilisateur active un élément. Par exemple, entre le moment où l'utilisateur presse le bouton de la souris et le relâche.
- La pseudo-classe :focus, qui s'applique quand un élément reçoit l'attention (celui-ci acceptant les événements du clavier ou d'autres formes d'entrées de texte).
- La pseudo-classe :first-child correspond au premier élément enfant d'un autre élément.
- La pseudo-classe :lang s'applique au éléments dont la langue correspondante est spécifiée par l'attribut lang ou xml:lang.
Les pseudo-éléments en css 2.1
- Le pseudo-élément :first-line produit un style particulier sur la première ligne formatée d'un paragraphe.
- Le pseudo-élément :first-letter peut être employé pour faire des capitales initiales et des lettrines, ce sont des effets typographiques courants. Ce genre de lettre initiale est assimilé à un élément de type en-ligne quand la valeur de sa propriété 'float' est 'none', et assimilé à un élément flottant autrement.
- Les pseudo-élément ':before' et ':after' servent à insérer un contenu généré avant ou après celui d'un élément.
Quelle différence mis à part une question de vocabulaire ?
Une pseudo-classe a un poids plus important lors du calcul de la spécificité d'un sélecteur. Une pseudo-classe, comme son nom l'indique, est apparentée à une classe Un pseudo-élément, comme son nom l'indique, est apparenté à un élément
Sources
- traduction des recommendations css2: les pseudo-classes
- traduction des recommendations css2: les pseudo-éléments
- w3c candidate recommendation css2.1: le calcul de la spécificité des sélecteurs [en]