如何在css中设置字体颜色渐变
如何在css中設置字體顏色漸變?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
css實現文字顏色漸變的三種方法
在web前端開發過程中,UI設計師經常會設計一些帶漸變文字的設計圖,在以前我們只能用png的圖片來代替文字,今天可以實現使用純CSS實現漸變文字了。下面就介紹3中實現方式供大家參考!
基礎樣式:
.gradient-text{text-align:left;text-indent:30px;line-height:50px;font-size:40px;font-weight:bolder;position:relative;}
第一種方法,使用 background-cli、 text-fill-color:
.gradient-text-one{
background-image:-webkit-linear-gradient(bottom,red,#fd8403,yellow);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}
說明 :
background: -webkit-linear-gradient(…) 為文本元素提供漸變背景。
webkit-text-fill-color: transparent 使用透明顏色填充文本。
webkit-background-clip: text 用文本剪輯背景,用漸變背景作為顏色填充文本。
第二種方法,使用 mask-image:
.gradient-text-two{
color:red;
}
.gradient-text-two[data-content]::after{
content:attr(data-content);
display:block;
position:absolute;
color:yellow;
left:0;
top:0;
z-index:2;
-webkit-mask-image:-webkit-gradient(linear,00,0bottom,from(yellow),to(rgba(0,0,255,0)));
}
說明:
mask-image 和 background-image 一樣,不僅可以取值是 圖片路徑,也可以是漸變色。
第三種方法,使用 linearGradient、fill:
.gradient-text-three{
fill:url(#SVGID_1_);
font-size:40px;
font-weight:bolder;
}
<svgviewBoxs="00500300"class="svgBox">
<defs>
<linearGradientid="SVGID_1_"gradientUnits="userSpaceOnUse"x1="0"y1="10"x2="0"y2="50">
<stopoffset="0"style="stop-color:yellow"/>
<stopoffset="0.5"style="stop-color:#fd8403"/>
<stopoffset="1"style="stop-color:red"/>
</linearGradient>
</defs>
<texttext-anchor="middle"class="gradient-text-three"x="110px"y="30%">花信年華</text>
</svg>
說明:
在SVG中,有兩種主要的漸變類型
:
線性漸變(linearGradient)
放射性漸變(radialGradient)
SVG中的漸變不僅可以用于填充圖形元素,還可以填充文本元素
dom示例:
<!DOCTYPEhtml>
<html>
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
<title>CSS3漸變字體</title>
<linkrel="stylesheet"href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">
<scriptsrc="https://cdn.bootcss.com/jquery/2.1.1/jquery.min.js"></script>
<scriptsrc="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<styletype="text/css">
*{margin:0;padding:0;}
body,html{width:100%;height:100%;}
.wrapper{width:80%;margin:0auto;margin-top:30px;}
.gradient-text{text-align:left;text-indent:30px;line-height:50px;font-size:40px;font-weight:bolder;position:relative;}
.gradient-text-one{
background-image:-webkit-linear-gradient(bottom,red,#fd8403,yellow);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}
.gradient-text-two{
color:red;
}
.gradient-text-two[data-content]::after{
content:attr(data-content);
display:block;
position:absolute;
color:yellow;
left:0;
top:0;
z-index:2;
-webkit-mask-image:-webkit-gradient(linear,00,0bottom,from(yellow),to(rgba(0,0,255,0)));
}
.gradient-text-three{
fill:url(#SVGID_1_);
font-size:40px;
font-weight:bolder;
}
</style>
</head>
<body>
<sectionclass="wrapper">
<pclass="panelpanel-info">
<pclass="panel-heading">
<h4class="panel-title">方法1.background-clip+text-fill-color</h4>
</p>
<pclass="panel-body">
<h4class="gradient-textgradient-text-one">花樣年華</h4>
</p>
</p>
<pclass="panelpanel-warning">
<pclass="panel-heading">
<h4class="panel-title">方法2.mask-image</h4>
</p>
<pclass="panel-body">
<h4class="gradient-textgradient-text-two"data-content="豆蔻年華">豆蔻年華</h4>
</p>
</p>
<pclass="panelpanel-danger">
<pclass="panel-heading">
<h4class="panel-title">方法3.svglinearGradient</h4>
</p>
<pclass="panel-body">
<svgviewBoxs="00500300"class="svgBox">
<defs>
<linearGradientid="SVGID_1_"gradientUnits="userSpaceOnUse"x1="0"y1="10"x2="0"y2="50">
<stopoffset="0"style="stop-color:yellow"/>
<stopoffset="0.5"style="stop-color:#fd8403"/>
<stopoffset="1"style="stop-color:red"/>
</linearGradient>
</defs>
<texttext-anchor="middle"class="gradient-text-three"x="110px"y="30%">花信年華</text>
</svg>
</p>
</p>
</section>
</body>
</html>
css的三種引入方式
1.行內樣式,最直接最簡單的一種,直接對HTML標簽使用style=""。2.內嵌樣式,就是將CSS代碼寫在之間,并且用
進行聲明。3.外部樣式,其中鏈接樣式是使用頻率最高,最實用的樣式,只需要在之間加上
就可以了。其次就是導入樣式,導入樣式和鏈接樣式比較相似,采用@import樣式導入CSS樣式表,不建議使用。
總結
以上是生活随笔為你收集整理的如何在css中设置字体颜色渐变的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sql开启mysql远程连接_CentO
- 下一篇: mysql跨进程锁_python基于my