Maison  >  Article  >  interface Web  >  Comment obtenir différentes couleurs de texte en CSS

Comment obtenir différentes couleurs de texte en CSS

青灯夜游
青灯夜游original
2022-08-30 18:47:104554parcourir

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 ;}".

Comment obtenir différentes couleurs de texte en CSS

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

Comment obtenir différentes couleurs de texte en CSS

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;    

Comment obtenir différentes couleurs de texte en CSS

上面没有说取值 text 的情况,看到前面的前缀,大家应该也能想到,它的兼容性问题了,目前还不是能所有浏览器都支持。

取值为text的意思,就是以区块内的文字作为裁剪区域向外裁剪,文字的背景即为区块的背景,文字之外的区域都将被裁剪掉。

所以,我们最后写color: transparent;  让文字为透明色,就是让后面背景色显示出来。

方式二:linear-gradient()+mask


效果图      

Comment obtenir différentes couleurs de texte en CSS

代码

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;

Comment obtenir différentes couleurs de texte en CSSComment obtenir différentes couleurs de texte en CSS

Ce qui précède ne mentionne pas la valeur du texte. En voyant le préfixe précédent, vous devriez également pouvoir penser à ses problèmes de compatibilité. Actuellement , il y en a encore. Tous les navigateurs ne le prennent pas en charge.

La valeur de texte signifie que le texte du bloc est utilisé comme zone de recadrage à recadrer vers l'extérieur. L'arrière-plan du texte est l'arrière-plan du bloc et la zone en dehors du texte sera recadrée.

Donc, nous écrivons enfin 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 🎜 🎜🎜Comment obtenir différentes couleurs de texte en CSS🎜🎜🎜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!

Déclaration:
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