案例分析:
实现扫光实际上就是给文字添加一个可以移动的背景块(文本背景),根据光束移动由强到弱的特性(可以理解为手电筒光照射时的左右移动) 因此设置渐变效果。
第一步: 实现背景块
/* 默认背景黑色
从左往右产生黑白渐变效果
背景不重复,位于左上角
背景大小80x80 (扫光背景块) */
background: #000 -webkit-linear-gradient(left,#000,#fff) no-repeat 0 0;
background-size: 80px;
第二步: 把背景块作用到文字上面
-webkit-background-clip: text;
/* 填充文本颜色 */
-webkit-text-fll-color: rgba(255,255,255,.3);
第三步: 动画循环
@-webkit-keyframes slideShine {
form {
background-position: 0 0;
}
to {
background-position: 100% 100%;
}
}
整体代码:
<style>
.bg {
width: 1000px;
height: 300px;
margin: 0 auto;
background: #000;
}
.slideShine {
width: 1000px;
background: #111 -webkit-linear-gradient(left, #111, #fff) 0 0 no-repeat;
background-size: 80px;
font: 60px "Microsoft YaHei";
text-align: center;
line-height: 300px;
-webkit-background-clip: text;
-webkit-text-fill-color: rgba(255, 255, 255, 0.3);
animation: slideShine 3s infinite;
}
@-webkit-keyframes slideShine {
0% {
background-position: 0 0;
}
100% {
background-position: 100% 100%;
}
}
</style>
<div class="bg">
<p class="slideShine">Welcome to Asher's Blog</p>
</div>