filter 属性定义了元素(通常是<img>)的可视效果(例如:模糊与饱和度)。
语法:
filter: none | blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | saturate() | sepia() | url();
提示:使用空格分隔多个滤镜。
注意:滤镜通常使用百分比 (如:75%), 当然也可以使用小数来表示 (如:0.75)。
首先,我们先建立一个demo,代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>css3 filter滤镜</title> <style> .demo{ width: 400px; height: 300px; margin: 50px auto; } </style> </head> <body> <div class="demo"> <img src="1.jpg-600" /> </div> </body> </html>
效果是这样的(没有加任何滤镜效果):
下面我们来看看css3 filter滤镜属性可以实现的图片滤镜效果:
1、css3 图片模糊滤镜效果
只需要加人以下css代码:
.demo img{ filter: blur(3px);/* 给图像设置高斯模糊,值越大越模糊 */ }
效果图:
考虑到浏览器的兼容性,我们可以添加一条语句:
.demo img{ -webkit-filter: blur(3px); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: blur(3px);/* 给图像设置高斯模糊 */ }
2、css3滤镜---brightness(%)设置图片亮度
.demo img{ -webkit-filter: brightness(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: brightness(50%); /* 设置图片的亮度,使其看起来更亮或更暗。如果值是0%,图像会全黑;值是100%,则图像无变化; 值是100%以上,则图像更亮*/ }
效果图:
.demo img{ -webkit-filter: brightness(150%); filter: brightness(150%); }
效果图:
3、css3滤镜---contrast(%)设置图片对比度
.demo img{ -webkit-filter: contrast(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: contrast(50%); /* 设置图片对比度,值是0%的话,图像会全黑。值是100%,图像不变。值可以超过100%, 意味着会运用更低的对比。若没有设置值,默认是1。*/ }
效果图:
.demo img{ -webkit-filter: contrast(150%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: contrast(150%); }
效果图:
4、css3滤镜---drop-shadow()设置图片阴影
.demo img{ /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ -webkit-filter: drop-shadow(10px 10px 10px rgba(0,0,0,.5)); filter: drop-shadow(10px 10px 10px rgba(0,0,0,.5)); /* 给图像设置一个阴影效果。阴影是合成在图像下面,可以有模糊度的,可以以特定颜色画出的遮罩图的偏移版本。*/ }
效果图:
说明:
filter:drop-shadow(h-shadow v-shadow blur spread color);
h-shadow:设置阴影的水平方向偏移量,负值会使阴影出现在元素左边。
v-shadow:设置阴影的垂直方向偏移量,负值会使阴影出现在元素上方。
blur:设置模糊度,值越大,越模糊,则阴影会变得更大更淡;不允许负值 若未设定,默认是0 (则阴影的边界很锐利)。
spread:正值会使阴影扩张和变大,负值会是阴影缩小;若未设定,默认是0 (阴影会与元素一样大小)。注:Webkit, 以及一些其他浏览器 不支持spread,如果加了也不会渲染。
color:设置阴影颜色;若未设定,颜色值基于浏览器。
5、css3滤镜---grayscale(%)设置图片灰度
.demo img{ -webkit-filter: grayscale(100%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: grayscale(100%); /* 将图像转换为灰度图像。值定义转换的比例。值为100%则完全转为灰度图像,值为0%图像无变化。*/ }
效果图:
6、css3滤镜---hue-rotate(deg)设置图片色相旋转
.demo img{ -webkit-filter: hue-rotate(90deg); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: hue-rotate(90deg); /* 给图像应用色相旋转,值为0deg,则图像无变化。若值未设置,默认值是0deg。 该值虽然没有最大值,超过360deg的值相当于又绕一圈*/ }
效果图:
7、css3滤镜---invert(%)设置图片反色
.demo img{ -webkit-filter: invert(100%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: invert(100%); /* 反转输入图像。值定义转换的比例。100%的价值是完全反转。值为0%则图像无变化。值在0%和100%之间, 则是效果的线性乘子。*/ }
效果图:
8、css3滤镜---opacity(%)设置图片透明度
.demo img{ -webkit-filter: opacity(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: opacity(50%); /* 转化图像的透明程度。值定义转换的比例。值为0%则是完全透明,值为100%则图像无变化。 */ }
效果图:
9、css3滤镜---saturate(%)设置饱和度
.demo img{ -webkit-filter: saturate(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: saturate(50%); /* 转换图像饱和度。值定义转换的比例。值为0%则是完全不饱和,值为100%则图像无变化。超过100%的值是允许的, 则有更高的饱和度。*/ }
效果图:
10、css3滤镜---sepia(%)设置图片褐色(有种复古的旧照片感觉)
.demo img{ -webkit-filter: sepia(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */ filter: sepia50%); /* 将图像转换为深褐色。值定义转换的比例。值为100%则完全是深褐色的,值为0%图像无变化。 */ }
效果图:
以上就是css怎么实现滤镜效果?的详细内容,更多请关注0133技术站其它相关文章!