效果展示:
直接 F12 把这行代码复制到 html 标签就可以了
html {
filter: grayscale(100%);
}
还有兼容版本的
html {
-webkit-filter: grayscale(100%); /* 针对 WebKit 内核浏览器(如 Chrome、Safari) */
-moz-filter: grayscale(100%); /* 针对 Mozilla 内核浏览器(如 Firefox) */
-ms-filter: grayscale(100%); /* 针对旧版 IE 浏览器(IE 9 和 10) */
-o-filter: grayscale(100%); /* 针对 Opera 浏览器 */
filter: grayscale(100%); /* 标准语法,适用于现代浏览器 */
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); /* 针对 IE 8 及更早版本 */
}
关键点:
-
filter: grayscale(100%);
- 这是标准的 CSS 滤镜属性,用于将元素的色彩转换为灰度模式。
100%
表示完全灰度,即黑白效果。如果设置为50%
,则会保留部分色彩。
-
前缀属性(如
-webkit-
,-moz-
,-ms-
,-o-
)- 不同浏览器内核可能需要特定的前缀来支持滤镜功能。
- 现代浏览器通常已经支持无前缀的标准语法,但为了兼容性,这里包含了多个前缀。
-
progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)
- 这是针对旧版 Internet Explorer(IE 8 及更早版本)的专有滤镜语法。
grayscale=1
表示完全灰度,grayscale=0
则表示正常彩色。
作用场景
-
哀悼日或纪念日
- 在一些特殊的日子(如国家哀悼日),网站可能会将页面变为黑白以表达哀思。
-
特定主题设计
- 如果某个网站希望传达简约、庄重的氛围,可以使用灰度效果。
-
测试目的
- 开发者可能会临时添加这段代码,用于测试网页在黑白模式下的显示效果。
注意事项
-
影响范围
-
这段代码作用于
<html>
元素,因此会影响整个网页的所有内容。 -
如果只想对某一部分内容应用灰度效果,可以将
filter
属性应用于特定的 HTML 元素,例如:.grayscale { filter: grayscale(100%); }
-
-
兼容性
- 现代浏览器(如 Chrome、Firefox、Edge)普遍支持
filter: grayscale(100%);
。 - 对于非常旧的浏览器(如 IE 8 及更早版本),需要使用
progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)
。
- 现代浏览器(如 Chrome、Firefox、Edge)普遍支持
-
用户体验
- 强制将网页变为黑白可能会影响用户的阅读体验,尤其是对于图片和视频内容较多的网站。
- 如果只是为了特定场合使用,建议在适当时间后移除此代码。
百度变灰色展示: