4

我有一个用于控制自定义设备的网站。在此表中,您单击一个单元格并使用 javascript 将颜色发送到设备。

<table style="width:100%;" id="ColorTable">
<tr>
    <td style="background-color:#FF8080;"><br/><br/></td>
    <td style="background-color:#FFFF80;"><br/><br/></td>
    <td style="background-color:#808000;"><br/><br/></td>     etc.

不幸的是,在控制设备的 Windows 7 计算机上,高对比度主题 #1 处于活动状态(叹气),因为客户希望这样。

Windows XP 过去在更改主题时会忽略网站,但 Windows 7 似乎会覆盖 Firefox 中网站的样式表信息。加载网站时,单元格显示为黑色,单击时会向设备发送#000000。

谷歌浏览器显示颜色不变。Internet Explorer 没有。

有没有办法..

..告诉 Firefox/网站忽略 Windows 7 主题?

.. 告诉 Windows 7 主题不要管网站?

更改 Compability 设置和 firefox 颜色设置不起作用。

非常感谢您的帮助!

4

3 回答 3

1

我知道这是很久以前问过的,但如果其他人遇到与我相同的问题,我会回答这个问题。

高对比度主题用于可用性,就像标志或斜坡而不是楼梯上的盲文。许多程序(如 Skype 和 Firefox)会检查这一点并改变它们的视觉效果以匹配。

如果您只是喜欢对比主题的外观,请选择经典主题并调整设置,直到它们与您选择的主题相匹配。

于 2013-11-02T00:57:52.790 回答
1

我刚刚在 Windows 10 中遇到了这个问题。

对我有用并且可能对你有用的是:

about:preferences#contentColors...

然后使用上面的选择更改覆盖页面指定的颜色:Only with High Contrast themesNever

Firefox 高对比度颜色

(我正在使用GreyEveTheme FINAL-Windows 10 高对比度主题

于 2017-03-20T10:43:07.743 回答
-1

Bugzilla上有一个关于此问题的错误。

这是我的解决方法。将此添加到<body>

<div class="high-contrast-test"></div>

添加这个CSS:

.high-contrast-test {
    width: 0;
    height: 0;
    background-image: url('#');
}

使用这个 JavaScript:

$(document).ready(function () {

    // detect high contrast mode to deal with firefox bug
    // .high-contrast-test has a background-image,
    // if there is no background-image we are in high contrast mode
    // https://bugzilla.mozilla.org/show_bug.cgi?id=452800
    if ($('.high-contrast-test').css('background-image') === 'none') {
        if ($('.Container').css('background-color') === 'rgb(255, 255, 255)') {
            $('html').addClass('hc-black-on-white');
        } else {
            $('html').addClass('hc-white-on-black');
        }
    }
});

然后可以使用 CSS 路径覆盖 HC 模式 CSS。

于 2017-01-11T01:03:59.157 回答