Maison > interface Web > tutoriel CSS > Comment créer une ombre de texte interne avec des pseudo-éléments CSS ?

Comment créer une ombre de texte interne avec des pseudo-éléments CSS ?

Linda Hamilton
Libérer: 2024-11-04 12:08:02
original
597 Les gens l'ont consulté

How to Create Inner Text Shadow with CSS Pseudo-Elements?

Création d'une ombre de texte interne avec CSS

Vous recherchez une technique pour projeter une ombre intérieure floue sur le texte d'une page Web. Vous avez exploré la propriété box-shadow, mais vous avez réalisé ses limites en matière d'ombrage interne. Cet article vise à vous guider avec une nouvelle technique utilisant des pseudo-éléments pour obtenir l'effet souhaité.

L'astuce des pseudo-éléments

En CSS, les pseudo-éléments ( :before et :after) permettent la création de contenu supplémentaire au sein d'un élément. Voici une application intelligente de ces éléments pour créer l'ombre intérieure :

  1. Contenu : Attribuez l'attribut title sur votre élément de texte avec le contenu de l'ombre intérieure souhaité. Ce contenu sera utilisé par les pseudo-éléments.
  2. Pseudo-éléments : Ajoutez deux pseudo-éléments (:before et :after) à l'élément texte. Attribuez le même contenu que l'attribut titre et attribuez-leur une position légèrement décalée (par exemple, 1 px à gauche et 1 px en haut) par rapport au texte original.
  3. Couleur et opacité : Ajustez la couleur et opacité des pseudo-éléments pour créer une ombre floue translucide. Par exemple, rgba(255, 255, 255, .1) créerait une ombre blanche avec 10 % d'opacité.
  4. Z-Index : Positionnez les pseudo-éléments derrière le texte original en utilisant z-index et valeurs négatives pour garantir qu'elles sont rendues derrière le texte.

Exemple de code

Vous trouverez ci-dessous un exemple de code qui illustre la technique :

<code class="css">.depth {
  display: block;
  padding: 50px;
  color: black;
  font: bold 7em Arial, sans-serif;
  position: relative;
}

.depth:before,
.depth:after {
  content: attr(title);
  padding: 50px;
  color: rgba(255, 255, 255, .1);
  position: absolute;
}

.depth:before {
  top: 1px;
  left: 1px
}

.depth:after {
  top: 2px;
  left: 2px
}</code>
Copier après la connexion
<code class="html"><h1 class="depth" title="Lorem ipsum">Lorem ipsum</h1></code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal