图片描述:箭头指向部分,以白色为背景,从左向右滚动。(不适用于IE)
<div> 例子:<div class="box"><span class="box-text">滚动的文字,我是滚动的文字</span></div></div>
.box { height: auto; background-color: blue;}.box-text{ color: white; background: -ms-gradient(linear,left top,right top,color-stop(0,#4d4d4d),color-stop(.4,#4d4d4d),color-stop(.5,#fff),color-stop(.6,#4d4d4d),color-stop(1,#4d4d4d)); background: -webkit-gradient(linear,left top,right top,color-stop(0,#4d4d4d),color-stop(.4,#4d4d4d),color-stop(.5,#fff),color-stop(.6,#4d4d4d),color-stop(1,#4d4d4d)); background-clip: text; -webkit-text-fill-color: transparent; animation: slidetounlock 3s infinite; -webkit-animation: slidetounlock 3s infinite;}@-webkit-keyframes slidetounlock{ 0% { background-position:-200px 0 } 100% { background-position:200px 0 }}
1、动画效果
@-webkit-keyframes
定义一组动画,在本动画中,将背景的位置进行了改变(注意是文本的位置)
2、背景为何选择到文本而不是整块背景?
background-clip: text;作用:指定绘图区的背景除了text外,还包括 :border-box|padding-box|content-box;三个属性
3、怎么实现一小段的变化效果的呢?
gradient()
作用:渐变
从实际效果中看到,白色部分之外都是灰色,越是靠近白色,就越白。
-ms-gradient(linear,left top,right top,color-stop(0,#4d4d4d),color-stop(.4,#4d4d4d),color-stop(.5,#fff),color-stop(.6,#4d4d4d),color-stop(1,#4d4d4d));说明:渐变类型,线性渐变(z=x*y)to left:设置渐变为从右到左。相当于: 270degto right:设置渐变从左到右。相当于: 90degto top:设置渐变从下到上。相当于: 0degto bottom:设置渐变从上到下。相当于: 180deg。这是默认值,等同于留空不写。
这样就实现了渐变字体部分
-webkit-text-fill-color: transparent;
字体填充颜色:继承与背景,所以字体颜色为设置的box-text的background ,而非box的背景颜色。
就这样加上一个动画,循环移动,就是实现了。
PS:欢迎一起学习,等服务器备案通过,会将所有案例发布至服务器上。
本文转载于:猿2048https://www.mk2048.com/blog/blog.php?id=hciahib22bb