通过一行CSS样式代码实现网页变成灰色的几个方法

今天是4月4日,庚子年清明节,也是全国人民哀悼纪念为抗击新冠肺炎疫情斗争而牺牲的烈士和逝世的同胞,国旗半垂,举国同悲。

主流的网站和APP都响应国家的号召,让网页或者应用全部变成灰色(黑白),以表示对逝者的悼念,而今天一个朋友微信上也询问了我这个问题,记得08年的时候曾经记得通过一行css底代码即可实现,今天又重新查询了下,做个记录!

一、通过对css文件添加代码来实现

对调用的css文件里添加一下css代码,可以实现网页变黑白,也就是网站变灰。

方法A

html {
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
-webkit-filter: grayscale(100%);
}

方法B

html {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
_filter:none;
}

二、在网页的<head>标签内加入以下代码

如果你不想改动CSS文件,你可以通过在网页头部中的<head>标签内部加入内联CSS代码的形式实现网站网页变灰

<style type="text/css">
html {
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
-webkit-filter: grayscale(100%);}
</style>

三、修改<html>标签加入内联样式

如里上面的两种方式都不喜欢,可以通过修改<html>标签,以加入内联样式的方法,达到网页变灰的效果

<html style="filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
-webkit-filter: grayscale(100%);">

四、最终我采用的代码

body *{
-webkit-filter: grayscale(100%); /* webkit */
-moz-filter: grayscale(100%); /*firefox*/
-ms-filter: grayscale(100%); /*ie9*/
-o-filter: grayscale(100%); /*opera*/
filter: grayscale(100%);
filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); 
filter:gray; /*ie9- */
}

以上几种方法,都是通过CSS的滤镜来控制页面的显示而已,唯一不同的就CSS代码调用的方式,根据实际的需要选择添加到代码中。

最后,我们一起缅怀战疫中逝去的英雄,愿凛冬消散 春暖花开后 再无国殇