Les pouvoirs des pseudo-éléments ::before et ::after

Nov 25, 2019 | backend

Vous les avez surement déjà vu plusieurs fois dans votre expèrience dans le développement front-end, sans vraiment connaître toutes les possibilités qu'ils offrent. Et il y en a ! Mais attention, on utilise dans des intentions purement décoratives. Évitez de vouloir gérer du contenu important avec ces pseudos-éléments. Ce n'est que pour la déco ! […]

Vous les avez surement déjà vu plusieurs fois dans votre expèrience dans le développement front-end, sans vraiment connaître toutes les possibilités qu'ils offrent. Et il y en a ! Mais attention, on utilise dans des intentions purement décoratives. Évitez de vouloir gérer du contenu important avec ces pseudos-éléments. Ce n'est que pour la déco ! […]

Vous les avez surement déjà vu plusieurs fois dans votre expèrience dans le développement front-end, sans vraiment connaître toutes les possibilités qu'ils offrent. Et il y en a ! Mais attention, on utilise dans des intentions purement décoratives. Évitez de vouloir gérer du contenu important avec ces pseudos-éléments. Ce n'est que pour la déco !

Il existe de nombreux autres pseudo-éléments. En voici la liste, ici. Dans cet article, nous allons nous interesser qu'à ces deux derniers :
::before
::after

Pour commencer, un pseudo-élément dépend toujours d'un élément préalable (nan mais sans dèc..!) :
ELEMENT ::after{...}

Exemple :
a::before{...}
.maClasse::after{...}
#monId::before{...}

Lors du passage en CSS3, on a voulu distinguer les pseudo-classes ":hover", "first-child", etc... des pseudos-éléments. La notation diffère donc selon la version css. Mais jusqu'à présent, les navigateurs s'en fichent. Vous pouvez toujours ecrire ":after".

- CSS 3 ::before
- CSS 2 :before

Mais concretement, qu'est-ce qu'on peut faire avec ?

Des animations interactives "whouahou"

Vous pouvez réaliser des animations interactives élaborées, comme des dégradés au survol d'un bloc ou d'une image.
Par exemple : https://bryanlrobinson.com/blog/how-to-css-after-elements-for-background-overlays/

Enrichir l'affichage des liens avec un icone

Vous pouvez personnaliser l'affichage des liens de votre site à l'aide d'un icone. Par exemple, afficher l'icone "PDF" au début de tous les liens de votre projet web pointant sur des fichier dont l'extension est ".pdf"

a[href$=".pdf"]::after {    
  content: " (pdf)";    
  font-size:  .8em;    
  color: tomato;
}
https://css-tricks.com/almanac/selectors/a/after-and-before/

https://la-cascade.io/les-pseudo-elements-css-before-et-after/

https://css-tricks.com/css-content/
https://css-tricks.com/pseudo-element-roundup/
Liens

Liens

https://bryanlrobinson.com/blog/top-3-uses-of-after-and-before-css-pseudo-elements/

https://krasimirtsonev.com/blog/article/CSS-before-and-after-pseudo-elements-in-practice

Juillet 2025

Juillet 2025

Avec un PC toujours en panne et un moral pas très élevé, j’ai décidé de créer un nouveau projet personnel 3D en travaillant sur mon laptop Mac et en tentant de tirer profit de sa configuration informatique modeste. Puis j’ai continué ma documentation sur le modeling sous Blender en optimisant et personnalisant son interface, en apprenant des raccourcies clavier et en listant les add-ons essentiels pour prévenir des crashs potentiels à venir et ne pas repartir à zéro. Enfin la 2eme partie de cette mensuelle est consacrée au 30 ans du jeu de Phantasmagoria, ainsi qu’au féminisme décolonial et matérialiste.

Mon badge du Game Camp 2026

Bilan du Game Camp 2026

Pour la 2eme fois, et grâce au studio Handscape avec lequel je travaille depuis quelques mois sur un jeu VR, j’ai pu me rendre au Game Camp 2026. Avec une petite énergie et sans l’euphorisante découverte de la 1ere fois, j’ai un peu plus profité des conférences cette...