php 渐变色,段落每行渐变色文本效果

这次给大家带来段落每行渐变色文本效果,段落每行渐变色文本效果的注意事项有哪些,下面就是实战案例,一起来看一下。

今天小编在Codepen上看到一个CSS写的效果。一个段落的每行文本是渐变效果。对于单行文本或单个词实现渐变填充效果并不是什么奇怪的事情,不过对于一个段落的每一行实现一个文本渐变填充的效果。估计还是会令很多人感到好奇。如果你是其中好奇的一员,请继续往下阅读,一探其中之究竟!

目标效果

今天的目标效果是实现下面这样的效果,或者说了解这种效果制作的小技巧:

5e044d9caca23c8559a4eab381a6e4d0.png

看到上面的效果,我想很多人首先会想到的就是background-clip:text、color:transparent和linear-gradient来完成。那么事实是这样吗?

如何完成一个段落的每行文本渐变效果

了解CSS的同学都清楚,使用:background-image: linear-gradient(to right, deeppink, dodgerblue);

-webkit-background-clip: text;

color: transparent;

就可以轻易的实现一个文本的渐变填充效果。比如下面这个示例:

d5ee9b41f69719be915e0070253f2ec7.png

来做个小实验,如果文本不是一个词或单行而是整个段落,效果会是如何?

d234cf234e08052382cf1424c8c66aa9.png

效果似乎也是完美的。如果把渐变效果参数换一换,渐变效果是一个斜角:background-image: linear-gradient(135deg, deeppink, dodgerblue);

看看两者的效果:

e982decbc5917b8261f30a788bce8c29.png

仔细一看,两个效果还是有差异的。先来看看同一个大小容器(本示例中的p元素,其大小是765px * 165px),对于两种不同的渐变效果,先来看to right的填充效果:

234dd790c05c6af8db5c1f66d7b74f0d.png

再来看135deg的填充效果:

2464c3a52c9aff58b5858cce9e85a3a2.png

到这里了,你或许就知道前面的示例有何不同?而且也知道其中的原因是什么?如果我们想要各种渐变对于段落的每行填充效果都相同,应该怎么实现?在实现之前,先简单的总结一下:

在linear-gradient中使用to right或者to left,不管是单个词、单行文本或者多行文本,得到的文本填充效果都将一致。但对于其他渐变的角度参数,那么多行文本填充中的每行效果就将有差异。

回到正题?怎么实现多行而且不管任何填充角度都有相同效果?实现这个效果有一个关键属性:box-decoration-break。简单的说一下,box-decoration-break属性具有两个属性值:slice和clone,其对应的效果如下:

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

802cfffb4169abb44300b3341ca7b31f.png

是不是离我们的目标越来越近了。那么把这个属性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;

效果如下:

2c3eaadd59ae2855f6e3ed24b9c4ddf2.png

咱们来验证一下是不是符合我们预期想要的效果:

c6a4962949170803bfb5423e5ba734e0.png

小技巧:box-decoration-break运用于行内元素,并且配上相应的line-height,让行与行之间有一定的间距。

回过头来,咱们看看,使用box-decoration-break是在行内元素和块元素之间的区别:

6f1f7db48e4cefb7ab438afdaf2c2478.png

是不是很完美。如果喜欢自己动手试试。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值