国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS Tips:段落每行漸變色文本效果的實現方法

2024-07-11 08:42:12
字體:
來源:轉載
供稿:網友

今天小編在Codepen上看到一個CSS寫的效果。一個段落的每行文本是漸變效果。對于單行文本或單個詞實現漸變填充效果并不是什么奇怪的事情,不過對于一個段落的每一行實現一個文本漸變填充的效果。估計還是會令很多人感到好奇。如果你是其中好奇的一員,請繼續往下閱讀,一探其中之究竟!

目標效果

今天的目標效果是實現下面這樣的效果,或者說了解這種效果制作的小技巧:

640?wx_fmt=jpg&wxfrom=5&wx_lazy=1

看到上面的效果,我想很多人首先會想到的就是background-clip:text、color:transparent和linear-gradient來完成。那么事實是這樣嗎?

如何完成一個段落的每行文本漸變效果

了解CSS的同學都清楚,使用:

background-image: linear-gradient(to right, deeppink, dodgerblue);-webkit-background-clip: text;color: transparent;

就可以輕易的實現一個文本的漸變填充效果。比如下面這個示例:

640?wx_fmt=jpg

來做個小實驗,如果文本不是一個詞或單行而是整個段落,效果會是如何?

640?wx_fmt=jpg

效果似乎也是完美的。如果把漸變效果參數換一換,漸變效果是一個斜角:

background-image: linear-gradient(135deg, deeppink, dodgerblue);

看看兩者的效果:

640?wx_fmt=jpg

仔細一看,兩個效果還是有差異的。先來看看同一個大小容器(本示例中的p元素,其大小是765px * 165px),對于兩種不同的漸變效果,先來看to right的填充效果:

640?wx_fmt=jpg

再來看135deg的填充效果:

640?wx_fmt=jpg

到這里了,你或許就知道前面的示例有何不同?而且也知道其中的原因是什么?如果我們想要各種漸變對于段落的每行填充效果都相同,應該怎么實現?在實現之前,先簡單的總結一下:

在linear-gradient中使用to right或者to left,不管是單個詞、單行文本或者多行文本,得到的文本填充效果都將一致。但對于其他漸變的角度參數,那么多行文本填充中的每行效果就將有差異。

回到正題?怎么實現多行而且不管任何填充角度都有相同效果?實現這個效果有一個關鍵屬性:box-decoration-break。簡單的說一下,box-decoration-break屬性具有兩個屬性值:slice和clone,其對應的效果如下:

用于一個段落中,其效果如下:

640?wx_fmt=jpg

是不是離我們的目標越來越近了。那么把這個屬性box-decoration-break:clone用于我們的示例:

background-image: linear-gradient(135deg, deeppink, dodgerblue);background-clip: text;-webkit-background-clip: text;box-decoration-break: clone;-webkit-box-decoration-break: clone;color: transparent;

效果如下:

640?wx_fmt=jpg

咱們來驗證一下是不是符合我們預期想要的效果:

640?wx_fmt=gif

小技巧:box-decoration-break運用于行內元素,并且配上相應的line-height,讓行與行之間有一定的間距。

回過頭來,咱們看看,使用box-decoration-break是在行內元素和塊元素之間的區別:

640?wx_fmt=jpg

是不是很完美。如果喜歡自己動手試試。

總結

這篇文章通過CSS的background-clip:text、color:transparent和box-decoration-break能實現每行文本漸變填充的效果,而且每行效果相同。而且不限于任何的漸變角度。
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 班戈县| 金堂县| 惠安县| 兴城市| 塔城市| 修武县| 尼木县| 辽宁省| 尼玛县| 梅河口市| 华阴市| 常德市| 锦州市| 太康县| 凤翔县| 玛曲县| 四平市| 方城县| 天津市| 河间市| 峡江县| 淄博市| 苗栗市| 衢州市| 襄汾县| 灵武市| 万盛区| 上栗县| 海门市| 榆中县| 芜湖市| 田林县| 太白县| 德令哈市| 枞阳县| 介休市| 嵩明县| 新乡县| 闽清县| 平陆县| 垦利县|