使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法

Leona ·
更新时间:2024-09-20
· 537 次阅读

今天在使用icloud的时候看到苹果icloud官网的毛玻璃效果非常赞,仔细研究了一下它的实现方式,是使用js配合background-image: -webkit-canvas的形式绘制出的毛玻璃背景图片。
不过今天又仔细研究了一下css3中的blur方法,可以实现同样的效果。且配合JS可以实现模糊缩放的效果

基础
先来看一下blur属性的表达式:

CSS Code复制内容到剪贴板 filter:blur(add=add,direction,strength=strength)  

我们看到blur属性有三个参数:add、direction、strength。
Add参数有两个参数值:true和false。意思是指定图片是否被改变成模糊效果。    

Direction参数用来设置模糊的方向。模糊效果是按照顺时针方向进行的。其中0度代表垂直向上,每45度一个单位,默认值是向左的270度。角度方向的对应关系见下表:
201678113011192.gif (216×196)

实例
CSS代码

CSS Code复制内容到剪贴板 .blur {         filter: url(blur.svg#blur); /* FireFox, Chrome, Opera */               -webkit-filter: blur(10px); /* Chrome, Opera */          -moz-filter: blur(10px);            -ms-filter: blur(10px);                    filter: blur(10px);                filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius=10, MakeShadow=false); /* IE6~IE9 */   }  

HTML部分

XML/HTML Code复制内容到剪贴板 <img src="mm1.jpg" class="blur" />  

其中blur(10px)中的大小决定了模糊后的图片大小和模糊程度



毛玻璃 CSS

需要 登录 后方可回复, 如果你还没有账号请 注册新账号