Définition de la CSS content.
La propriété CSS content
permet de spécifier en CSS un texte, une image ou des guillemets à insérer en tant que contenu Css. content
est utilisée avec les pseudo-éléments ::before
et ::after
.
La propriété de feuille de style content
CSS peut prendre la valeur de :
-
none
: aucun contenu n'est généré. -
normal
, metnone
pour les pseudo-éléments:before
et:after
. - un chaîne de caractères entre "" ou '', valeur vide autorisée.
-
url('url.gif')
: une image. Les doubles ou simples quotes ne sont pas obligatoires sauf si, votre url comporte un espace. Vous pouvez mettre aussi, des images d'un autre format comme svg ou base64. -
open-quote
: ouvre les guillemets et l'affiche. -
no-open-quote
: ouvre les guillemets mais n'affiche rien. -
close-quote
: ferme les guillemets et l'affiche. -
no-close-quote
: ferme les guillemets mais n'affiche rien. -
counter()
: compteur, utilisé pour les listes. -
attr(nom_attribut)
: affiche la valeur de l'attribut de l'élément spécifié par nom_attribut. Une chaîne vide est renvoyée s'il n'existe pas. -
inherit
: hérite de la propriétécontent
de son parent (CSS2).
Le contenu inséré est un élément dit "élément remplacé anonyme" et comme n'importe quel élément il peut être "charté", vous pouvez par exemple modifier son type avec la propriété CSS
display
, changer son type positionnement avec position
ou le mettre flottant avec float
, etc...Tester si la propriété CSS content est interprétée par la navigateur en Javascript
Conditions d'application de la CSS content.
La propriété CSS content
n'est utilisable qu'avec avec le pseudo-élément CSS :after
ou :before
.
La valeur counter()
est liée avec les propriétés CSS counter-increment
et counter-reset
.
Héritage des valeurs Css de content.
Le contenu inséré avec la propriété CSS content
, hérite des propriétés de l'élément dans lequel il se trouve, à condition que ces dernières acceptent l'héritage. Par exemple, il héritera de la propriété CSS color
, mais pas de la propriété CSS padding
.
Problème d'interprétation de content en Css.
La propriété CSS content
peut poser des problèmes d'interprétation notamment sur la forme des quotes.
La propriété de feuille de style content
CSS est interprétée à partir d'Internet Explorer 8+.
Règles de syntaxes CSS pour content.
Guillemet dans la chaîne de caractères
Si votre chaîne de caractères est entre "" ou '' et que cette dernière comporte un guillemet de même type, vous devez mettre un antislash (//) devant chaque guillemet de la chaîne.
Caractères accentués ou spéciaux mal interprétés
Si les caractères accentués ou spéciaux ne sont pas interprétés correctement, utilisez leur code hexadécimal pour le Css.
Gestion des quotes ou guillemets
Il faut savoir que suivant le navigateur les "quote" ou guillemets ne sont pas identiques :
- « » pour le niveau un et ‹ › pour le niveau deux pour Internet Explorer,
- “ ” pour le niveau un et ‘ ’ pour le niveau deux pour Firefox,
- " " pour le niveau un et ' ' pour le niveau deux pour Chrome.
- ...
Si vous ouvrez un guillemet et que vous ouvrez un second guillemet sans fermer le premier alors le second guillemet sera de niveau 2.
Pour afficher une fermeture de guillemets, il faut qu'il y ai une ouverture de guillemets correspondante. Par exemple si vous avez une ouverture de guillemets et deux fermetures de guillemets, le dernièr guillemet ne sera pas affiché.
propriété CSS content sur une balise IMG
Si vous utilisez la propriété Css content
sur une balise IMG
le texte inséré sera visible que si l'image n'est pas affichée. Il faut le voir un texte alternatif, comme l'attribut alt
.
Résultat :
Avec image existante :
Avec image en erreur :
Ce que vous devez voir :
Sachez cependant qu'a ce jour (09-2018) :
- edge n'affiche pas les contents sur une image.
- Firefox n'affiche pas le content sur une image de
:before
Compatibilités navigateurs de la propriété content
- Détails des versions de la CSS content
- Propriété
content
est compatible avec CSS1 et plus.
Exemples et astuces CSS pour utiliser content
Mettre des sauts de ligne dans le content
Vous pouvez faire des sauts de ligne dans le texte du contenu en utilisant //00000A
alias //A
.
Résultat :
Ce que vous devez voir :
Espace après un code hexadécimal non interprété
L'espace après un code hexadécimal n'est pas pris en compte. Pour palier à ce problème, vous devez soit mettre un double espace soit un espace en code hexadécimal : //000020
.
Résultat :
Ce que vous devez voir :
Mettre des saut de ligne dans l'attribut pour l'affichage avec attr()
Si vous utiliser attr()
de la propriété Css content
, vous pouvez mettre des sauts de ligne qui seront interprétés à l'affichage du texte de l'attribut. Les sauts de ligne correspondent :
-
- 

white-space
vaec une valeur de type pre
.Ce que vous devez voir :
Mettre des images base64 et svg dans content
Vous pouvez mettre des images au format svg. Pour cela vous devez mettre devant data:image/svg+xml;charset=UTF-8,
Vous pouvez mettre des images au format base64. Pour cela vous devez mettre devant data:image/png;base64,
Votre avis sur la définition content en CSS
Votez pour la définition CSS content
- 1/5
- 2/5
- 3/5
- 4/5
- 5/5
Votes: 4.2 / 5 - 33
votes
Cliquez sur une étoile pour voter.