【CSS】CSS filter属性,并实现页面置灰效果

76 阅读1分钟

在有些特殊时间,会看到很多网站都置灰了,这种效果是怎么实现的?难道要每个元素都去修改一遍吗?显然不太可能,其实很简单,只需要一个属性就可以了。

html.gray {
  filter: grayscale(100%);
}

就是 filter 属性,添加到html上就可以了,下面的代码是添加了一下老旧浏览器的兼容支持,如果不需要的话,只添加上面的就可以了。

/* 灰色模式 */
html.gray {
  filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  /* IE10-IE11 */
  -ms-filter: grayscale(100%);
  /* IE6-IE9 */
  filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
  -webkit-filter: grayscale(1);
}