4

カスタム デバイスの制御に使用する Web サイトがあります。この表でセルをクリックすると、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 ではテーマを変更するときに Web サイトを無視していましたが、Windows 7 では Firefox の Web サイトのスタイルシート情報を上書きしているようです。Web サイトをロードするとセルが黒く表示され、クリックすると #000000 がデバイスに送信されます。

Google Chrome は色を変更せずに表示します。Internet Explorer にはありません。

方法はありますか..

..firefox/websites に Windows 7 のテーマを無視するように伝えますか?

.. Windows 7 のテーマに Web サイトを放っておくように指示しますか?

Compability 設定と Firefox の色設定を変更しても機能しませんでした。

助けていただければ幸いです。

4

3 に答える 3

-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 に答える