背景
想必大家都感受到了,很多网站、APP 在昨天都变灰了。先来感受一下变灰后的效果。
(资料图)
让网页变为黑白配色,是个常见的诉求。而且往往是突如其来的诉求,是无法预知的。当发生这样的需求时,我们需要迅速完成变更发布。
这种灰色的效果怎么实现的呢?如何做到图片、文字、按钮都变灰的效果呢?
一行代码
这一行代码是个CSS代码:
filter: grayscale(1)
为了使整个网页生效,你可以把它放在 标签的样式里。直接写到 html 文件内,例如:
也可以用内联样式,只要没用 important CSS 语法,内联样式优先级最高:
...
为了更好的兼容性,你可以补一个带 -webkit- 前缀的样式,放在 filter 后面:
...
语法
grayscale(amount)
参数 :
转换值的大小,可以是
或
.。当值为 100% 时,灰度最大。0% 时与原图没有区别。0% 到 100% 之间的值会使灰度线性变化。amount 为空时使用值为1。.
例子 :
grayscale(0) /* 无效果 */grayscale(.7) /* 70% 灰度 */grayscale(100%) /* 灰度最大 */
兼容性
如果你想获得更好的兼容性,可以加前缀 :
-webkit-filter: grayscale(100%);-moz-filter: grayscale(100%);-ms-filter: grayscale(100%);-o-filter: grayscale(100%);filter: grayscale(100%);filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);