Maison > Article > interface Web > Comment obtenir différentes couleurs de texte en CSS
Deux méthodes : 1. Utilisez background-clip, la syntaxe est "text element {background-image: Linear-gradient(..); background-clip: text; color: transparent;}". 2. Utilisez le masque, la syntaxe est "élément de texte {couleur : valeur de couleur 1 ;} élément de texte : avant {masque : dégradé linéaire(..); couleur : valeur de couleur 2 ;}".
L'environnement d'exploitation de ce tutoriel : système Windows7, version CSS3&&HTML5, ordinateur Dell G3.
En CSS, vous pouvez obtenir différentes couleurs de texte en ajoutant des effets de dégradé aux éléments de texte. Ce qui suit présente deux manières d'obtenir des effets de dégradé de texte.
Méthode 1 : Linear-gradient()+background-clip
Il n'y a pas d'attribut direct en CSS pour définir le dégradé du texte. Habituellement, le texte ne peut être qu'une couleur unie. Cependant, vous pouvez utiliser le découpage de l'arrière-plan pour faire apparaître la couleur d'arrière-plan dans la zone de texte, ce qui donne l'impression que le texte présente un dégradé.
Rendu
Code
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> .text { background-image: linear-gradient(to right, red, blue); background-clip: text; -webkit-background-clip: text; color: transparent; /*需要文字透明*/ } </style> </head> <body> <h1 class="text">为你定制 发现精彩</h1> </body> </html>
Pas beaucoup de code, jetons un oeil :
fond : dégradé linéaire (à droite, rouge, bleu);
Ceci line définit la couleur du dégradé pour l'arrière-plan. Veuillez noter qu'il s'agit d'une abréviation. En fait, elle définit la couleur du dégradé pour background-image
, pas pour background-color
, mais. La valeur de l'image d'arrière-plan est une couleur dégradée. background: linear-gradient(to right, red, blue);
这行是给背景设置为渐变色,这里注意一点,这样是简写了,其实是给background-image
设置为渐变色,不是 background-color
,是背景图 取值为渐变色。
-webkit-background-clip: text;
这行就要说到,background-clip 属性了 :
background-clip 属性 规定背景的绘制区域
语法 background-clip: border-box|padding-box|content-box;
上面没有说取值 text 的情况,看到前面的前缀,大家应该也能想到,它的兼容性问题了,目前还不是能所有浏览器都支持。
取值为text的意思,就是以区块内的文字作为裁剪区域向外裁剪,文字的背景即为区块的背景,文字之外的区域都将被裁剪掉。
所以,我们最后写color: transparent;
让文字为透明色,就是让后面背景色显示出来。
方式二:linear-gradient()+mask
效果图
代码
nbsp;html> <meta> <style> h1{ position: relative; color: yellow; } h1:before{ content: attr(text); position: absolute; z-index: 10; color:pink; -webkit-mask:linear-gradient(to left, red, transparent ); } </style> <h1>前端简单说</h1>
代码也不多,我们简单说一下,
:before 选择器向选定的元素 前 插入内容。
使用content 属性来指定要插入的内容。
content取值 attr 就是用来获取属性值的,content:attr(属性名);
content: attr(text);
能获取到元素的 text 属性,这里的这个text属性是自己自定义的一个属性,你也可以在元素中加一个 tt 属性,像这样 <h1 tt="前端简单说">前端简单说</h1>
然后content属性 这样写,content: attr(tt);
-webkit-background-clip: text;
Cette ligne concerne l'attribut background-clip : L'attribut background-clip spécifie la zone de dessin de l'arrière-plan
Syntaxe
background-clip : border-box|padding-box|content-box;
color: transparent;
pour rendre le texte transparent, ce qui signifie que la couleur d'arrière-plan derrière celui-ci sera affichée. 🎜🎜🎜🎜Méthode 2 : dégradé linéaire()+masque🎜🎜🎜🎜🎜🎜🎜Rendu 🎜 🎜🎜🎜🎜🎜code🎜🎜rrreee🎜Le code n'est pas grand chose, parlons-en brièvement, 🎜🎜:avant de sélectionner l'élément sélectionné Insérer contenu avant. 🎜Utilisez l'attribut content pour spécifier le contenu à insérer. 🎜🎜content value attr est utilisé pour obtenir la valeur de l'attribut, content:attr (nom de l'attribut);🎜🎜content: attr(text);
peut obtenir l'attribut texte de l'élément, ce texte ici Le L'attribut est un attribut auto-défini. Vous pouvez également ajouter un attribut tt à l'élément, comme ceci 🎜<h1 tt="Front-end en bref">Front-end en bref</h1> code> 🎜Ensuite, l'attribut content est écrit comme ceci, <code>content: attr(tt);
Cela fonctionnera également. 🎜🎜🎜Bon, continuons à parler du point clé de la deuxième méthode, l'attribut mask Vous pouvez lire l'article : https://www.php.cn/css-tutorial-494998.html🎜🎜🎜En termes simples, l'attribut masque permet d'afficher ou de masquer une partie d'un élément. 🎜🎜On peut comprendre le principe de la deuxième méthode en regardant l'image🎜🎜🎜🎜🎜 (Partage de vidéos d'apprentissage : 🎜Démarrer avec le front-end web🎜)🎜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!