这篇文章将为大家详细讲解有关CSS3怎么实现歌词进度文字颜色填充变化动态效果的思路,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
播放音乐时,歌词会随歌曲的进度逐渐填充颜色,不是逐字改变颜色,而是从左向右横向逐个像素改变的,也就是说会出现一个字的左右两边是不同颜色的效果。
这个效果通过CSS3可以实现。
实现思路:
1、background填充一个背景颜色,以及要变化的颜色
2、-webkit-background-clip:text;裁剪出文字的背景,即是楼空文字的意思
3、-webkit-text-fill-color:transparent;把裁剪缕空的文字弄透明,这样就可以通过缕空的形状看到背景颜色,这时背景颜色就是字体的颜色
4、background-size:0 100%;设置背景的宽为0,然后通过通道改变背景的宽度,就可以实现文字颜色读词效果。
HTML代码:
<div style="padding:15% 35%; text-align:center;"> <span class="text">从左往右填充文字颜色</span> </div>
CSS代码:
@keyframes scan { 0% { background-size:0 100%; } 100% { background-size:100% 100%; } } .text { background:#7e7e7e -webkit-linear-gradient(left, #fff, #fff) no-repeat 0 0; -webkit-text-fill-color:transparent; -webkit-background-clip:text; background-size:0 100%; } .load { background-size:100% 100%; animation: scan 5s linear; }
jquery代码:
window.onload=function(){ $('.text').addClass('load'); }
注意:通过上面代码实现的效果,只支持webkit系浏览器
关于“CSS3怎么实现歌词进度文字颜色填充变化动态效果的思路”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。