CSS filter 属性
提示:更多“自己尝试”的示例在下方。
定义和用法
filter
属性定义了应用于元素(通常是 <img>)的视觉效果(如模糊和饱和度)。
浏览器支持
表中的数字指定了完全支持该属性的第一个浏览器版本。
属性 | |||||
---|---|---|---|---|---|
筛选器 | 53 | 13 | 35 | 9 | 40 |
CSS 语法
filter: none | blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | saturate() | sepia() | url();
提示:要使用多个滤镜,请用空格分隔每个滤镜(请参阅下面的“更多示例”)。
滤镜函数
注意:使用百分比值(例如75%)的滤镜也接受十进制值(例如0.75)。
滤镜 | 描述 | 演示 |
---|---|---|
none | 默认值。指定无效果 | 演示 ❯ |
blur(px) | 对图像应用模糊效果。值越大,模糊程度越高。 如果未指定值,则使用0。 |
演示 ❯ |
brightness(%) | 调整图像的亮度。 0% 会使图像完全变黑。 100% (1) 是默认值,表示原始图像。 超过100%的值会提供更亮的效果。 |
演示 ❯ |
contrast(%) | 调整图像的对比度。 0% 会使图像完全变黑。 100% (1) 是默认值,表示原始图像。 超过100%的值会提供对比度更高的效果。 |
演示 ❯ |
drop-shadow(h-shadow v-shadow blur spread color) | 对图像应用阴影效果。 可能的值 h-shadow - 必填。指定水平阴影的像素值。负值将阴影放置在图像的左侧。 v-shadow - 必填。指定垂直阴影的像素值。负值将阴影放置在图像的上方。 blur - 可选。这是第三个值,必须以像素为单位。为阴影添加模糊效果。值越大,模糊程度越高(阴影变得更大更亮)。不允许负值。如果未指定值,则使用0(阴影边缘锐利)。 spread - 可选。这是第四个值,必须以像素为单位。正值会导致阴影展开并变大,负值会导致阴影缩小。如果未指定,则为0(阴影将与元素大小相同)。 注意:Chrome、Safari 和 Opera 以及其他浏览器可能不支持此第四个长度;如果添加,它将不会渲染。 color - 可选。为阴影添加颜色。如果未指定,则颜色取决于浏览器(通常为黑色)。 创建红色阴影的示例,水平和垂直方向均为8px,模糊效果为10px filter: drop-shadow(8px 8px 10px red); 提示:此滤镜类似于box-shadow属性。 |
演示 ❯ |
grayscale(%) | 将图像转换为灰度。 0% (0) 是默认值,表示原始图像。 100% 会使图像完全变为灰色(用于黑白图像)。 注意:不允许负值。 |
演示 ❯ |
hue-rotate(deg) | 对图像应用色相旋转。该值定义了图像样本在色轮周围调整的度数。0deg是默认值,表示原始图像。 注意:最大值为360度。 |
演示 ❯ |
invert(%) | 反转图像中的样本。 0% (0) 是默认值,表示原始图像。 100% 会使图像完全反转。 注意:不允许负值。 |
演示 ❯ |
opacity(%) | 设置图像的不透明度级别。不透明度级别描述了透明度级别,其中 0% 完全透明。 100% (1) 是默认值,表示原始图像(无透明度)。 注意:不允许负值。 提示:此滤镜类似于opacity属性。 |
演示 ❯ |
saturate(%) | 使图像饱和。 0% (0) 会使图像完全不饱和。 100% 是默认值,表示原始图像。 超过100%的值会提供超饱和的效果。 注意:不允许负值。 |
演示 ❯ |
sepia(%) | 将图像转换为棕褐色。 0% (0) 是默认值,表示原始图像。 100% 会使图像完全变为棕褐色。 注意:不允许负值。 |
演示 ❯ |
url() | url() 函数接受一个XML文件的位置,该文件指定SVG滤镜,并且可能包含指向特定滤镜元素的锚点。示例 filter: url(svg-url#element-id) |
|
initial | 将此属性设置为其默认值。阅读关于initial | |
inherit | 从其父元素继承此属性。阅读关于inherit |
更多示例
使用多个滤镜
要使用多个滤镜,请用空格分隔每个滤镜。请注意,顺序很重要(即在 sepia() 之后使用 grayscale() 将导致图像完全变为灰色)
img {
filter: contrast(200%) brightness(150%);
}
自己动手试一试 »
所有滤镜
所有滤镜函数的演示
.blur {
filter: blur(4px);
}
.brightness {
filter: brightness(0.30);
}
.contrast {
filter: contrast(180%);
}
.grayscale {
filter: grayscale(100%);
}
.huerotate {
filter: hue-rotate(180deg);
}
.invert {
filter: invert(100%);
}
.opacity {
filter: opacity(50%);
}
.saturate {
filter: saturate(7);
}
.sepia {
filter: sepia(100%);
}
.shadow {
filter: drop-shadow(8px 8px 10px green);
}
自己动手试一试 »
相关页面
CSS教程:CSS图像
HTML DOM参考:filter属性