CSS3的filter属性详解

作者: 忽如寄 | 来源:发表于2016-08-19 14:17 被阅读423次

CSS3新增了滤镜属性filter,总共定义了10种效果,filter目前的浏览器的兼容情况如下:


虽然IE不支持,但是这也不影响我们应该去了解一下这个超赞的属性,有了这个属性我们处理图片就更加得心应手了,filter定义的10种效果分别是:blur、opacity、grayscale、sepia、saturate、hue-rotate、invert、brightness、contrast、drop-shadow。
1、blur模糊
blur的效果顾名思义就是模糊,单位是px,例如:filter:blur(10px)效果如下,左为原图,右为使用blur的效果图,我非常怀疑今年朋友圈的红包照片微信团队就是这么干的: blur(10px)

当blur(100px)时可以看到图片几乎看不到了


blur(100px)

这个值必须为正值,为负值时没有任何效果,如blur(-100px):


blur(-100px)

2、opacity透明度
效果和opacity属性一致,数值在0-1之间,当为0是看不到,1为正常显示,当filter:opacity(0.5)时效果如下图右,左为原图


当opacity(0.1)如下:

opacity(0.1)
3、grayscale透明度
grayscale效果是使图片变灰,数值在0-1之间,1表示完全变灰,成了黑白照片,0表示没有效果,当filter:grayscale(0.5)时效果如下图右 grayscale(0.5)

可能效果不是很明显,当我们设为1时grayscale(1)时,如下,这就很有年代感

grayscale(1),我是一张有故事的照片┑( ̄Д  ̄)┍
4、sepia褐色
sepia的效果是变为褐色,数值在0-1之间,1表示完全变褐,0表示没有效果,这很适合于打造复古风格、怀旧风格,sepia(0.5)效果如下图右: sepia(0.5)

sepia(1)效果如下,给人一种怀旧的感觉,感觉想要回到80、90年代一样

sepia(1)
5、saturate饱和度
饱和度是指颜色的纯度,saturate的取值为大于或等于0的数值,当filter:saturate(0)时,效果和grayscale(1)效果一样,如下图右: saturate(0)

saturate(1)时,效果与原图一样:

saturate(1)

saturate(5)时,效果如下:

saturate(5)

6、invert反转颜色
数值取值是在0-1或者是0-100%,当为1或100%时为完全反转,所谓的颜色反转就是255减去颜色的rgb中的各个值,所以白色rgb(255,255,255)反转invert(100%)就是黑色rgb(0,0,0):

invert(100%)rgb(0,0,0)

所以蓝色rgb(0,120,215)反转invert(100%)后就是rgb(255,135,40)

rgb(0,120,215)invert(100%)
这个可以得出一个公式:反转后颜色值=(255-当前颜色值) X invert数值+当前颜色值 X (1-invert数值),如rgb(0,120,215)使用invert(80%)就是r=(255-0)X0.8+0X(1-0.8)=204,g=(255-120)X0.8+120X(1-0.8)=132,b=(255-215)X0.8+215X(1-0.8)=75,所以得rgb(204,132,75) rgb(0,120,215)invert(80%)

上面的图片使用invert(100%)后的效果如下图右,一种照片底片的效果:

invert(100%)

7、brightness亮度
取值为数字或百分数,当取值为1时,与原图一致,当取值为0或者负数是为全黑,当取值为0-1时,亮度降低,当取值大于1时,亮度增大,brightness(0)效果如下图右:

brightness(0)

brightness(0.5)效果如下图右:

brightness(0.5)

brightness(1)效果如下图右:

brightness(1)

brightness(5)效果如下图右:

brightness(5)
8、contrast对比度
取值为大于或等于0的数字或百分数,当取值为1时,与原图一致,当取值为0-1时,对比度降低,当取值大于1时,对比度增大,contrast(0)效果如下图右: contrast(0)

contrast(0.2)效果如下图右:

contrast(0.2)

contrast(1)效果如下图右:


contrast(1)

contrast(5)效果如下图右:


contrast(5)

9、drop-shadow阴影
drop-shadow和box-shadow很像,是添加阴影,drop-shadow(10px 10px red)效果如下图右:

drop-shadow(10px 10px red)

10、hue-rotate色相旋转
取值是角度,单位是deg,这个是根据色轮对颜色进行调整,Adobe有一个色轮在线配色网站https://kuler.adobe.com/,如hue-rotate(120deg)效果如下图右:

hue-rotate(120deg)

hue-rotate(260deg)效果如下图右, 这一抹绿真是让人不经意想起里约奥运会泳池里的水呀┑( ̄Д  ̄)┍:

hue-rotate(260deg)

filter属性的10效果就介绍到这里啦,赶快去尝试一下吧!!!GO,GO,GO!

相关文章

  • CSS3的filter属性详解

    CSS3新增了滤镜属性filter,总共定义了10种效果,filter目前的浏览器的兼容情况如下: 当blur(1...

  • CSS3的filter属性详解

    filter 属性定义了元素(通常是,也可是文字块,整块)的可视效果(例如:模糊与饱和度)。 filte...

  • HTML透明度样式filter和opacity

    HTML透明度样式filter和opacity opacity属性   opacity是CSS3的属性, 能够元...

  • css动画

    参考:CSS3属性详解:动画详解[https://blog.csdn.net/lizhi1030/article/...

  • css 一些技巧

    鼠标选择字体时候改变颜色 和背景颜色 CSS3 filter(滤镜) 属性

  • 图片模糊处理/计算盒子宽度calc函数/

    CSS3滤镜filter: filter CSS属性将模糊或颜色偏移等图形效果应用于元素。 盒子宽度calc函数 ...

  • css3-transform

    CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translat...

  • CSS3属性transform详解

    CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translat...

  • 巧用 CSS3 filter(滤镜) 属性

    效果预览 这里仅展示黑白效果。 原文链接:CSS3 filter(滤镜) 属性[https://tzy1997.c...

  • CSS3的新特性;

    CSS3 Transform 转换(制作旋转、位移、缩放等效果详解); transform 的属性包括:旋转 ro...

网友评论

  • 坏蛋222:那个像有色眼镜一样的是什么属性呀?
    坏蛋222: @忽如寄 filter :mask ,网上有这个属性,我就看着写了,可是没用呀,就没反应,前缀也都写了,就是没用,
    坏蛋222: @忽如寄 ,是filter :mask ,好像是这个,可是加了前缀怎么写都没反应,是兼容性问题吗?
    忽如寄:@坏蛋2 是指哪一个呢,所有的demo都有说明是哪个属性的
  • t7ink:赞
  • 毒舌小说:赞,不错

本文标题:CSS3的filter属性详解

本文链接:https://www.haomeiwen.com/subject/shfbsttx.html