Formateur

Coder comme un PRO

Coder comme un PRO

Formateur Web depuis 11 ans dans la filière Webdesign, je vous propose de booster vos connaissances pour réaliser des sites web.

Cours par Webcam

Matières abordées

Niveaux

Contact

Vous êtes intéressez par la formation?
Contactez-moi.

Facebook
Twitter
LinkedIn

Changer le texte d’un élément HTML avec le CSS

Il est parfois nécessaire de modifier du contenu texte sans vouloir revenir sur le code source (comme un contenu HTML généré par PHP). C’est souvent le cas lorqu’on souhaite traduire un contenu fourni par un plugin WordPress.

Dans l’exemple ci dessous nous allons remplacer, avec le CSS, le fameux ‘Hello Word’ par ‘Bonjour Monde’.

Le code HTML (que nous n’allons pas modifier) est le suivant : 

<p class="content">Hello Word</p>

Nous allons nous baser sur la classe ‘content’ pour traduire notre paragraphe.

Pour commencer, utilisons la technique qui consiste à mettre en retrait négative le contenu du paragraphe et de réduite la hauteur de ligne à zéro.

.content {
  text-indent: -9999px;
  line-height: 0;
}

Puis il suffit de créer du contenu via le CSS avec l’attribut content: "Bonjour Monde!"; et remettre l’interlignage à la valeur initiale pour ce dernier. Cependant il faut que ce contenu appartienne à une nouvelle ligne (l’ancienne se situe à -9999px du bord gauche de la page) gràce à l’attribut CSS display: block; et supprimer le retrait en fixant sa valeur à zéro.

.content::after {
  content: "Bonjour Monde!";
  text-indent: 0;
  display: block;
  line-height: initial;
}

Le pseudo-élément after est nécessaire sinon l’ancien texte sera situé à gauche de la page (voir l’affichage ci-dessous)

Affichage si before

Testez vous-même le code sur Codepen

Changer avec Font-size

Une autre solution consiste à réduire la taille du texte d’origine à zéro et redéfinir à la valeur initiale la taille du contenu ajouté par le CSS. Une méthode bien plus simple à mon avis. 

.content {
  font-size: 0;
}

.content::before {
  content: "Bonjour Monde!";
  font-size: initial;
}

Testez vous-même le code sur Codepen

See the Pen BEGMar by salsacobo (@salsacobo) on CodePen.

Changer le texte d’un bouton d’envoi (submit) en CSS

Malheureusement il n’est pas possible de le faire avec le CSS en utilisant un pseudo -élément. Deux astuces existent néanmoins.

La première consiste à mettre une image en arrière plan du bouton et mettre la taille du texte à zéro.

#monBoutonEnvoi{
 font-size: 0;
 width: 135px;
 height: 60px;
 background-image: url(image); 
}

La deuxième consiste à utiliser le Javascript.

document.getElementById("monBoutonEnvoi").value="Nouveau texte";

 

A lire aussi

tutowebdesign

Afficher du contenu au scroll

Afficher du contenu au scroll Voici un effet impressionnant et pourtant très facile à mettre en place sur vos pages. Le principe consiste à faire

Lire »