css怎么实现滤镜效果?

css怎么实现滤镜效果?其实很简单,css3 filter属性就可以实现好几种滤镜效果。本篇文章就给大家介绍一下css3 filter属性,以及实现的滤镜效果有哪些,希望对你们有所帮助。

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>

效果是这样的(没有加任何滤镜效果):

1.jpg-600

下面我们来看看css3 filter滤镜属性可以实现的图片滤镜效果:

1、css3 图片模糊滤镜效果

只需要加人以下css代码:

.demo img{
filter: blur(3px);/* 给图像设置高斯模糊,值越大越模糊 */
}

效果图:

2.jpg-600

考虑到浏览器的兼容性,我们可以添加一条语句:

.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%以上,则图像更亮*/
}

效果图:

3.jpg-600

.demo img{
   -webkit-filter: brightness(150%);
   filter: brightness(150%);
}

效果图:

4.jpg-600

3、css3滤镜---contrast(%)设置图片对比度

.demo img{
    -webkit-filter: contrast(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
    filter: contrast(50%);
    /* 设置图片对比度,值是0%的话,图像会全黑。值是100%,图像不变。值可以超过100%,
    意味着会运用更低的对比。若没有设置值,默认是1。*/
}

效果图:

5.jpg-600

.demo img{
    -webkit-filter: contrast(150%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
    filter: contrast(150%);
}

效果图:

6.jpg-600

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));
     /* 给图像设置一个阴影效果。阴影是合成在图像下面,可以有模糊度的,可以以特定颜色画出的遮罩图的偏移版本。*/
}

效果图:

7.jpg-600

说明:

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%图像无变化。*/
}

效果图:

8.jpg-600

6、css3滤镜---hue-rotate(deg)设置图片色相旋转

.demo img{
   -webkit-filter: hue-rotate(90deg); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
   filter: hue-rotate(90deg);
   /* 给图像应用色相旋转,值为0deg,则图像无变化。若值未设置,默认值是0deg。
   该值虽然没有最大值,超过360deg的值相当于又绕一圈*/
}

效果图:

9.jpg-600

7、css3滤镜---invert(%)设置图片反色

.demo img{
   -webkit-filter: invert(100%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
   filter: invert(100%);
   /* 反转输入图像。值定义转换的比例。100%的价值是完全反转。值为0%则图像无变化。值在0%和100%之间,
   则是效果的线性乘子。*/
}

效果图:

10.jpg-600

8、css3滤镜---opacity(%)设置图片透明度

.demo img{
   -webkit-filter: opacity(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
   filter: opacity(50%);
   /* 转化图像的透明程度。值定义转换的比例。值为0%则是完全透明,值为100%则图像无变化。 */
}

效果图:

11.jpg-600

9、css3滤镜---saturate(%)设置饱和度

.demo img{
   -webkit-filter: saturate(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
   filter: saturate(50%);
   /* 转换图像饱和度。值定义转换的比例。值为0%则是完全不饱和,值为100%则图像无变化。超过100%的值是允许的,
   则有更高的饱和度。*/
}

效果图:

12.jpg-600

10、css3滤镜---sepia(%)设置图片褐色(有种复古的旧照片感觉)

.demo img{
   -webkit-filter: sepia(50%); /*考虑浏览器兼容性:兼容 Chrome, Safari, Opera */
   filter: sepia50%);
   /* 将图像转换为深褐色。值定义转换的比例。值为100%则完全是深褐色的,值为0%图像无变化。 */
}

效果图:

13.jpg-600

以上就是css怎么实现滤镜效果?的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » CSS3 答疑