最近听说了一款挺火的软件,叫 “抖音”,发现它的标志有蓝红双色的叠加。我突然想到,我们的网站文字能否做出这个效果,甚至让文字像这个一样抖起来?答案当然是可以的。

静态效果

只需要给对应的选择器添加 text-shadow 属性即可完成。
例如我让 body 里面的所有文字抖起来,就这样写:

body{
    text-shadow: -2px 0 rgba(0, 255, 255, .5), 2px 0 rgba(255, 0, 0, .5);
}

动态效果

这种静态的效果我可不满足,想让它动起来,不需要任何 JavaScript,只需要 CSS3 动画即可完成。接下来我们就利用 CSS3 动画,让所有文字抖起来吧!

添加动画

@keyframes shake-it{
    0%{
        text-shadow: 0 0 rgba(0, 255, 255, .5), 0 0 rgba(255, 0, 0, .5);
    }
    25%{
        text-shadow: -2px 0 rgba(0, 255, 255, .5), 2px 0 rgba(255, 0, 0, .5);
    }
    50%{
        text-shadow: -5px 0 rgba(0, 255, 255, .5), 3px 0 rgba(255, 0, 0, .5);
    }
    100%{
        text-shadow: 3px 0 rgba(0, 255, 255, .5), 5px 0 rgba(255, 0, 0, .5);
    }
}

添加属性

body{
    animation: shake-it .5s reverse infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

试玩一下

我在这篇文章已经写好了一个添加效果的 JavaScript 代码,点击下面的按钮即可体验!

前方高能!别把你的眼睛都给看蒙了 2333

BGM:马克思佩恩:3 - 加载音乐

本文转至保罗的小宇宙,感谢分享!

最后修改:2018 年 05 月 08 日
如果觉得我的文章对你有用,请随意赞赏