2

IE 中有一个可访问性选项(“忽略网页上指定的颜色”),它会从网页中删除所有 CSS 颜色/背景颜色,以便某些用户更容易查看。

这可能会通过删除根本无法在前台输出的有用图像而导致问题。

有谁知道是否有办法在最终用户浏览器中检测此设置的状态?

最终它可以用于根据此设置的状态显示替代样式,因此如果可以使用 JS 检测到它,那将是完美的。

但是,我意识到这是一个很长的尝试,因为允许网页检测浏览器设置可能会打开安全漏洞!但对这个主题的任何想法将不胜感激。

4

2 回答 2

1

您可以使用getComputedStyle测试给定元素;这不会为您节省自定义 css(如果用户在可访问性设置中定义了覆盖 css),但使用剥离颜色它确实可以工作(尽管它仍然是一个 hack)。

一个 jQuery 示例如下:

<div id="example" style="background-color:lime;width:40px;height:40px;border:2px solid #000;"></div>
<script>
$(function(){
    alert($("#example").css("backgroundColor"));
});
</script>

这将为您提供具有可访问颜色的白色 (255,255,255) 和具有剥离颜色的适当石灰 (0,255,0) - 如果您决定使用它,这将使您开始进行此检测。

于 2012-10-12T12:45:42.717 回答
0

是的,你可以,我找不到我正在寻找的链接,但下面的链接会让你开始:http ://www.w3.org/TR/css3-color/#css-system

最好的事情是你不需要 Javascript。

于 2012-10-12T19:27:48.450 回答