7.1 Pseudo-élément ::first-letter
Les pseudo-éléments ::first-letter
et ::first-line
offrent des outils puissants pour styliser les premières lettres et les premières lignes des éléments de texte. Ces pseudo-éléments sont largement utilisés pour créer différents effets typographiques, améliorer la lisibilité et l'esthétique du texte sur les pages web.
Le pseudo-élément ::first-letter
permet de styliser la première lettre d'un bloc de texte. Il est souvent utilisé pour créer des effets décoratifs, comme des lettres initiales agrandies ou stylisées dans les paragraphes.
sélecteur::first-letter {
/* styles */
}
Exemple d'utilisation de ::first-letter
Dans cet exemple, la première lettre du paragraphe est agrandie, mise en gras et colorée en bleu. La propriété float: left
et margin-right
créent un effet de lettre "en retrait", repoussant le texte restant:
/* Stylisation de la première lettre du paragraphe */
p::first-letter {
font-size: 2em;
font-weight: bold;
color: #3498db;
float: left;
margin-right: 0.1em;
}
Propriétés supportées pour ::first-letter
Le pseudo-élément ::first-letter
supporte de nombreuses propriétés, incluant :
font
color
background
margin
padding
border
float
text-transform
text-decoration
Avec ces propriétés, tu peux gérer l'apparence de la première lettre de manière flexible.
Exemple de stylisation étendue de ::first-letter
Dans cet exemple, la première lettre reçoit des effets supplémentaires — ombre portée et taille plus grande :
/* Stylisation de la première lettre du paragraphe avec effets supplémentaires */
p::first-letter {
font-size: 3em;
font-weight: bold;
color: #e74c3c;
float: left;
margin-right: 0.2em;
line-height: 1;
text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
7.2 Pseudo-élément ::first-line
Le pseudo-élément ::first-line
permet de styliser la première ligne d'un bloc de texte. Il est utilisé pour créer divers effets typographiques, tels que le changement de la police ou de la couleur de la première ligne, améliorant la perception visuelle du texte.
Syntaxe :
sélecteur::first-line {
/* styles */
}
Exemple d'utilisation de ::first-line
Dans cet exemple, la première ligne du paragraphe est mise en gras, colorée en vert et a un fond gris clair :
/* Stylisation de la première ligne du paragraphe */
p::first-line {
font-weight: bold;
color: #2ecc71;
background-color: #f0f0f0;
}
Propriétés supportées pour ::first-line
Le pseudo-élément ::first-line
supporte de nombreuses propriétés, incluant :
font
color
background
margin
padding
border
line-height
text-transform
text-decoration
letter-spacing
word-spacing
Elles permettent de gérer l'apparence de la première ligne de manière flexible.
Exemple de stylisation étendue de ::first-line
Dans cet exemple, la première ligne reçoit des effets supplémentaires, tels que la transformation du texte en majuscules et la modification de l'espacement des lettres et des mots :
/* Stylisation de la première ligne du paragraphe avec effets supplémentaires */
p::first-line {
font-weight: bold;
color: #e67e22;
background-color: #f9f9f9;
text-transform: uppercase;
letter-spacing: 0.1em;
word-spacing: 0.2em;
}
7.3 Utilisation combinée de ::first-letter et ::first-line
Les pseudo-éléments ::first-letter
et ::first-line
peuvent être utilisés ensemble pour créer des effets typographiques complexes.
Exemple d'utilisation combinée
Dans cet exemple, la première lettre du paragraphe et la première ligne reçoivent différentes stylisations, créant un effet visuel complexe et intéressant :
/* Stylisation de la première lettre et de la première ligne du paragraphe */
p::first-letter {
font-size: 2.5em;
font-weight: bold;
color: #3498db;
float: left;
margin-right: 0.1em;
}
p::first-line {
font-weight: bold;
color: #2ecc71;
background-color: #f0f0f0;
}
Exemple complet
Dans cet exemple, la première lettre du paragraphe est agrandie et mise en valeur avec une couleur bleue, et la première ligne du paragraphe est mise en gras et en vert avec un fond gris :
/* Stylisation de la première lettre du paragraphe */
p::first-letter {
font-size: 2.5em;
font-weight: bold;
color: #3498db;
float: left;
margin-right: 0.1em;
}
/* Stylisation de la première ligne du paragraphe */
p::first-line {
font-weight: bold;
color: #2ecc71;
background-color: #f0f0f0;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exemple de pseudo-éléments ::first-letter et ::first-line</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam id dolor id nibh ultricies vehicula ut id elit. Curabitur blandit tempus porttitor. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Nullam quis risus eget urna mollis ornare vel eu leo.</p>
</body>
</html>
GO TO FULL VERSION