【发布时间】:2019-08-09 17:29:29
【问题描述】:
我想使用灰度将整个页面设为黑白。它适用于所有浏览器,除了 IE 11 也是必需的。有许多类似的问题,但通常针对特定元素like an image。
我有这个代码:
body {
width: 100%;
filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);
-webkit-filter: grayscale(1);
filter: grayscale(1);
}
所以效果很好,整个页面都是黑白的。我如何为 IE11 实现这一点?有什么合理的hack吗?
问题与建议的答案不同 -> 我在这里寻找解决方案,如何以某种合理的方式克服 IE 中的问题。
【问题讨论】:
-
除了图像,您还想精确地转灰度吗?如果你只有文字或纯色,那么你可以手动设置所有元素的颜色,比如
#elem{ color: green } .grayscale #elem { color: #CCC }等。 -
整个站点,例如,如果发生某些灾难事件。只是满足的要求。更喜欢一些全局解决方案而不是更改单个元素@Kaiido
-
无法完成。 IE11 在 svg 元素上不支持除 svg 过滤器之外的任何其他过滤器。您可以通过将图像替换为 svg
元素来破解图像上的某些内容,但对于其他任何内容您都不能。因此,您唯一的解决方案是手动进行,所以再一次,除了图像之外,您还想精确地转换灰度吗? -
为什么要将整个页面变成“黑白”?你不能只发送一个字体颜色和背景颜色吗? 默认是白色背景上的黑色文本,它本身就是灰度——这不是你想要的吗?
-
把它放在上下文中 - 这是一个航空公司网站,所以如果飞机坠毁,PM应该能够将页面变成黑白,所以基本上页面上的所有元素@ObsidianAge
标签: css internet-explorer-11 grayscale