用css3实现ps蒙版效果+动画

Posted 筑梦前端

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用css3实现ps蒙版效果+动画相关的知识,希望对你有一定的参考价值。

说实话,css3越来越强大,使用css也可以做越来越多意想不到的效果。

今天,见到有人用css3实现了ps的蒙版效果,如下所示:

实现原理

这个动画,其实也并不复杂。它使用background-clip实现了文字蒙版的效果,然后结合了背景图片的animation实现了如上图所示的文字蒙版动画。

用css3做蒙版效果

常见的有两种,一种是图形的,另一种是文字的。

图形蒙版

这里要使用的到时clip-path,它的作用是根据你指定的图形的轮廓来保留剩余的区域,如果你制定的图形是圆形,那么剩余的就是个圆形。

它有个特点就是,你可以把你的盒子模型定义为不规则的图形。

我们都知道原来的css只允许我们把元素定义成矩形和正方形,又可以在矩形区域内嵌套其他的矩形或者正方形元素。而现在我们可以定义一个不规则的图形,然后在这个不规则的图形内定义其他的元素。

这样说可能还是有点儿含糊。假如你在一个元素内填充满文字,以前只能沿着矩形或者正方形的边缘填充,而现在使用clip-path可以使文字沿着不规则的图形的边缘填充。

具体可参考文字环绕(扫描下方二维码查看原网址)

用css3实现ps蒙版效果+动画

接着说图形蒙版,有两种实现:

一种是保留剪切图形轮廓内的内容,可以参考shpape-masking(扫描下方二维码查看原网址)

用css3实现ps蒙版效果+动画

另一种使保留剪切图内之外的内容,可参考Reverse clip path(扫描下方二维码查看原网址)

用css3实现ps蒙版效果+动画

这个动画效果是由背景的gif和视频结合的,当然也可以使用css3的animation。

文字蒙版

文字蒙版使用的使css3中的backgorund-clip,这个属性支持border-boxpadding-boxcontent-boxtext等属性,具体使用可参考mdn background-clip(扫描下方二维码查看原网址)

用css3实现ps蒙版效果+动画

它和clip的效果类似,都是剪切后剩余部分的内容,text 这个属性值比较特殊,针对的是元素内的文字,其他的针对的是元素内内容的显示区域。

背景的动画很简单就是一个animation动画。

参考示例:Merry Christmas(扫描下方二维码查看原网址)









以上是关于用css3实现ps蒙版效果+动画的主要内容,如果未能解决你的问题,请参考以下文章

如何利用CSS3动画实现弹跳效果

纯CSS3画出小黄人并实现动画效果

深入css3帧动画实现ps时间轴动画效果steps()(前端网备份)

怎么用CSS做图层的投影效果?

svg路径蒙版动画

js如何做动画效果