浅谈CSS3 Filter的10种特效
2016-04-07 13:01
519 查看
必须要说明的是,这里的CSS3 Filter与我们所熟悉的CSS Filter是完全不同的两个概念,也不是我们所熟悉的IE滤镜,它是指通过CSS或SVG渲染元素概念可以描述的元素,包括它的子元素。
关于CSS3 Filter的具体解释您可以参考《Filter Effects 1.0》这篇文章。
接下来我们就开始探讨如何使用CSS3 Filter实现我们想要的效果。
首先,我们介绍一下Filters的使用:Filters主要是运用在图片上,以实现一些特效(尽管他们也能运用于video上)。但是,我们主要讨论的是Filter图片上的运用。
再来,介绍一下Filters的语法:Filters使用时候的语法非常简单,例如:
它的默认值是none,且不具备继承性。其中filter-function具有以下可选值:
1、grayscale灰度
2、sepia褐色
3、saturate饱和度
4、hue-rotate色相旋转
5、invert反色
6、opacity透明度
7、brightness亮度
8、contrast对比度
9、blur模糊
10、drop-shadow阴影
最后,谈一谈Filters在浏览器中的兼容性:
目前支持这个属性的浏览器少得可怜,现在只有webkit支持,而且只有webkit nightly版本和Chrome 18.0.976以上以上版本才支持,所以说,你要是想看到效果就需要下载这两个版本中的一个。
下面我们一起来见证这些效果的实现过程,首先在页面中应该有一张图片:
将图片取名为“normal”,表示此图没有任何“filter”效果,接着在效果实现的过程中,我们依次将其类名改成对应的效果名。
使用这个特效,会把图片变成灰色,也就是说你的图片将只有两种颜色——“黑色”和“白色”。
默认值:100%。
如果你在grayscale()中没有任何参数值,默认的将会以“100%”渲染。其效果下图所示:
![](http://www.php100.com/uploadfile/2012/1030/20121030080410886.png)
sepia译为“褐色”,使用这种特效,会将你的图片复古成黑白老照片。
默认值:100%。
如果你在sepia()中没有任参数值,默认将会以“100%”渲染,具体效果如下图所示:
![](http://www.php100.com/uploadfile/2012/1030/20121030080410609.png)
saturat的作用是用来改变图片的饱和度。
默认值:100%。
![](http://www.php100.com/uploadfile/2012/1030/20121030080411540.png)
如果我们将其值变大到300%,那么效果将如下图所示:
![](http://www.php100.com/uploadfile/2012/1030/20121030080412443.png)
hue-rotate的作用用来改变图片的色相。
默认值:0deg。
![](http://www.php100.com/uploadfile/2012/1030/20121030080413681.png)
invert做出来的效果就像是我们照相机底面的效果一样。
默认值:100%。
![](http://www.php100.com/uploadfile/2012/1030/20121030080413954.png)
opacity的作用是改变图片的透明度。
默认值:100%。
![](http://www.php100.com/uploadfile/2012/1030/20121030080414194.png)
brightness的作用是改变图片的亮度。
默认值:100%。
![](http://www.php100.com/uploadfile/2012/1030/20121030080415171.png)
contrast的作用是改变图片的对比度,学习过photoshop的,应该都知道。
默认值:100%。
![](http://www.php100.com/uploadfile/2012/1030/20121030080415337.png)
blurt的作用是改变图片的清晰度。
默认值:0。
![](http://www.php100.com/uploadfile/2012/1030/20121030080416104.png)
drop-shadow的效果类似于box-shadow,作用是给图片加阴影效果。
![](http://www.php100.com/uploadfile/2012/1030/20121030080416466.png)
以上所列出的就是CSS3 Filter能够实现的10种效果,当然,如果你需要什么样的效果还得自己设定。
例如:
![](http://www.php100.com/uploadfile/2012/1030/20121030080417746.png)
其实大家仔细一看,这些效果就像是photoshop做出来的一样,CSS3 Filter能够实现的很多效果都是类似于photoshop中的某种特效。但是,大家想一想不需要自己用photoshop去做效果,几句简简单单的 CSS3代码就能够实现这样的效果是不是很炫?
不光光是Filter,CSS3只用代码就能够实现的效果还有很多很多,是不是觉得很期待?不用图片,不用Javascript,几句简简单单的CSS3代码就能实现以前不敢想的效果,还等什么?赶快进入CSS3的世界吧。
关于CSS3 Filter的具体解释您可以参考《Filter Effects 1.0》这篇文章。
接下来我们就开始探讨如何使用CSS3 Filter实现我们想要的效果。
首先,我们介绍一下Filters的使用:Filters主要是运用在图片上,以实现一些特效(尽管他们也能运用于video上)。但是,我们主要讨论的是Filter图片上的运用。
再来,介绍一下Filters的语法:Filters使用时候的语法非常简单,例如:
1 2 3 | elm { filter: none | <filter-function > [ <filter-function> ]* } |
1、grayscale灰度
2、sepia褐色
3、saturate饱和度
4、hue-rotate色相旋转
5、invert反色
6、opacity透明度
7、brightness亮度
8、contrast对比度
9、blur模糊
10、drop-shadow阴影
最后,谈一谈Filters在浏览器中的兼容性:
目前支持这个属性的浏览器少得可怜,现在只有webkit支持,而且只有webkit nightly版本和Chrome 18.0.976以上以上版本才支持,所以说,你要是想看到效果就需要下载这两个版本中的一个。
下面我们一起来见证这些效果的实现过程,首先在页面中应该有一张图片:
1 | <img title=”normal” width=”128″ height=”128″ alt=”HTML5 Logo” src=”http://www.php100.com/uploadfile/2012/1030/20121030080410580.jpg” /> |
一、grayscale灰度
使用这个特效,会把图片变成灰色,也就是说你的图片将只有两种颜色——“黑色”和“白色”。1 2 3 | .grayscale{ -webkit-filter:grayscale(1); } |
如果你在grayscale()中没有任何参数值,默认的将会以“100%”渲染。其效果下图所示:
![](http://www.php100.com/uploadfile/2012/1030/20121030080410886.png)
二、sepia
sepia译为“褐色”,使用这种特效,会将你的图片复古成黑白老照片。1 2 3 | .sepia{ -webkit-filter:sepia(1); } |
如果你在sepia()中没有任参数值,默认将会以“100%”渲染,具体效果如下图所示:
![](http://www.php100.com/uploadfile/2012/1030/20121030080410609.png)
三、saturate饱和度
saturat的作用是用来改变图片的饱和度。1 2 3 | .saturate{ -webkit-filter:saturate(0.5); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080411540.png)
如果我们将其值变大到300%,那么效果将如下图所示:
1 2 3 | .saturate{ -webkit-filter:saturate(3); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080412443.png)
四、hue-rotate色相旋转
hue-rotate的作用用来改变图片的色相。1 2 3 | .hue-rotate{ -webkit-filter:hue-rotate(90deg); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080413681.png)
五、invert反色
invert做出来的效果就像是我们照相机底面的效果一样。1 2 3 | .invert{ -webkit-filter:invert(1); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080413954.png)
六、opacity透明度
opacity的作用是改变图片的透明度。1 2 3 | .opacity{ -webkit-filter:opacity(.2); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080414194.png)
七、brightness亮度
brightness的作用是改变图片的亮度。1 2 3 | .brightness{ -webkit-filter:brightness(.5); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080415171.png)
八、contrast对比度
contrast的作用是改变图片的对比度,学习过photoshop的,应该都知道。1 2 3 | .contrast{ -webkit-filter:contrast(2); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080415337.png)
九、blur模糊
blurt的作用是改变图片的清晰度。1 2 3 | .blur{ -webkit-filter:blur(3px); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080416104.png)
十、drop-shadow阴影
drop-shadow的效果类似于box-shadow,作用是给图片加阴影效果。1 2 3 | .drop-shadow{ -webkit-filter:drop-shadow(5px 5px 5px #ccc); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080416466.png)
以上所列出的就是CSS3 Filter能够实现的10种效果,当然,如果你需要什么样的效果还得自己设定。
例如:
1 2 3 | .custom{ -webkit-filter:saturate(5) hue-rotate(500deg) grayscale(0.3) sepia(0.7) contrast(1.5) invert(0.2) brightness(.9); } |
![](http://www.php100.com/uploadfile/2012/1030/20121030080417746.png)
其实大家仔细一看,这些效果就像是photoshop做出来的一样,CSS3 Filter能够实现的很多效果都是类似于photoshop中的某种特效。但是,大家想一想不需要自己用photoshop去做效果,几句简简单单的 CSS3代码就能够实现这样的效果是不是很炫?
不光光是Filter,CSS3只用代码就能够实现的效果还有很多很多,是不是觉得很期待?不用图片,不用Javascript,几句简简单单的CSS3代码就能实现以前不敢想的效果,还等什么?赶快进入CSS3的世界吧。
相关文章推荐
- HTML5调用摄像头实例
- 「Linux 中国」2018 微信文章排行榜
- 企业批量部署RealVNC远程控制软件
- 按右键另存图片只能存BMP
- photoshop去除图片上的水印
- upload上传单张图片
- 图片引发的溢出危机(图)
- 视频分割 Ultra Video Splitter V4.0.4 汉化版 下载
- C#实现把彩色图片灰度化代码分享
- C#将图片和字节流互相转换并显示到页面上
- C#监控文件夹并自动给图片文件打水印的方法
- 纯CSS实现的当鼠标移上图片添加阴影效果代码
- 如何使用C#从word文档中提取图片
- C#实现打开画图的同时载入图片、最大化显示画图窗体的方法
- C#图片添加水印的实现代码
- 随鼠标移动的图片或文字特效代码
- CSS 图片横向排列实现代码
- C#实现将Email地址转成图片显示的方法
- C#实现图片加相框的方法
- 超级经典一套鼠标控制左右滚动图片带自动翻滚