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

玉臂匠
• 阅读 6966

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

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

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

实现原理

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

用css3做蒙版效果

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

图形蒙版

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

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

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

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

具体可参考文字环绕

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

一种是保留剪切图形轮廓内的内容,可以参考shpape-masking

另一种使保留剪切图内之外的内容,可参考Reverse clip path。这个动画效果是由背景的gif和视频结合的,当然也可以使用css3的animation。

文字蒙版

文字蒙版使用的使css3中的backgorund-clip,这个属性支持border-boxpadding-boxcontent-boxtext等属性,具体使用可参考mdn background-clip

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

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

参考示例:Merry Christmas

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
徐小夕 徐小夕
5年前
轻松教你使用纯css实现水波动画
css3给我们前端开发带来了很便利,我们可以使用css3的新特新实现各种形状和动效,接下来笔者就来带大家介绍如何用css3实现H5Dooring编辑器(https://github.com/MrXujiang/h5Dooring)中的水波动画.(https://imghelloworld.osscnbeijing.aliy
徐小夕 徐小夕
5年前
用css3实现惊艳面试官的背景即背景动画(高级附源码
我们传统的前端更多的是用javascript实现各种复杂动画,自从有了Css3transition和animation以来,前端开发在动画这一块有了更高的自由度和格局,对动画的开发也越来越容易。这篇文章就让我们汇总一下使用Css3实现的各种特效。这篇文章参考《css揭秘》这本书,并作出了自己的总结,希望能让大家更有收获,也强烈推荐大家看看这本书,你值得拥有
徐小夕 徐小夕
5年前
轻松教你使用纯css实现H5-Doorin编辑器中的水波动画
css3给我们前端开发带来了很便利,我们可以使用css3的新特性实现各种形状和动效,接下来笔者就来带大家介绍如何用css3实现H5Dooring编辑器(https://github.com/MrXujiang/h5Dooring)中的水波动画.(https://imghelloworld.osscnbeijing.aliy
徐小夕 徐小夕
5年前
如何使用css3实现一个类在线直播的队列动画
之前在群里有个朋友问了这样一个问题,就是如何在小程序中实现类似直播平台的用户上线时的队列动画?作为一名前端工程师,解决方案无非以下2种:1.使用javascript根据条件来控制元素的样式实现队列动画2.用纯css3配合数据驱动模型来实现.大家都知道在现代的Web开发中,我们能使用Css实现的效果尽量不要用Js,所以我们应该优先考虑用C
Chase620 Chase620
5年前
CSS3动画之逐帧动画
CSS3动画开发指南第二弹,剥丝抽茧为你解析逐帧动画,同时放送从实战经验中总结出来的逐帧动画使用技巧。什么是逐帧动画要了解CSS3逐帧动画,首先要明确什么是逐帧动画。看一下维基百科中的定义:定格动画,又名逐帧动画,是一种动画技术,其原理即将每帧不同的图像连续播放,从而产生动画效果。简而言之,实现逐帧动画需要两个条件:(1)相关联
Wesley13 Wesley13
4年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
4年前
CSS3 文本效果
CSS3文本效果CSS3中包含几个新的文本特征。在本章中您将了解以下文本属性:textshadowwordwrap浏览器支持!(http://static.oschina.net/uploads/space/2016/0123/124344_Ps
Python进阶者 Python进阶者
2年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
玉臂匠
玉臂匠
Lv1
两岸猿声啼不住,轻舟已过万重山。
文章
4
粉丝
0
获赞
0