2

jQuery UIとjQxを使用するプロジェクトでは、ユーザーが選択したテーマをすべてのフォームフィールドに適用しており、この問題が発生しました。

入力(テキスト)フィールドでテキストを選択する場合、背景色はブラウザ間で同じではありません。私はこれがブラウザ/OS固有であることを知っています、しかしそれはこの奇妙なことにつながります:

クロム

ここに画像の説明を入力してください

IE8および9

ここに画像の説明を入力してください

ご覧のとおり、IEで選択したテキストは、選択した背景色が要素の残りの部分と混ざり合うため、問題が発生する可能性があります。(IEがこの色を白に設定している理由は私を超えています。)

テキスト選択色の変更」CSSトリックを試しましたが、変更しようとしているもの以外のすべての場所で機能します。

IEの動作を低下させる可能性のあるブードゥーの魔法やその他の文書化されていない機能はありますか?(そして、IE10が本当に 吸うことが少なくなることを願っています。)

4

1 に答える 1

1

この質問は非常に古いものですが、この考えを解決しようとしている他の人を救うために、ここで答えています。たまたま答えに出くわしたとき、あきらめて、Internet Explorer からのこの動作を受け入れる準備ができていました。

Internet Explorer は、スタイルに色が設定されているテキスト ボックス内の選択されたテキストに対して、この強調表示方法を使用しているようです。この属性を削除すると、強調表示は正常に機能します。

color 属性を独自のクラスに移動し、両方のクラスをテキストボックスに適用したときに、答えに出くわしました。

以下は、IE でのこのテキスト選択の強調表示を示しています。

<input type="text" id="uiSizeWidth" class="SizeInput">

.SizeInput {
    width: 70px;
    text-align: center;
    height: 30px;
    font-weight: bold;
    margin: 2px;
    color: #ef4915;
}

しかし、これはしません:

<input type="text" id="uiSizeWidth" class="SizeInput InputColor">

.SizeInput {
    width: 70px;
    text-align: center;
    height: 30px;
    font-weight: bold;
    margin: 2px;
}

.InputColor {
    color: #ef4915;
}

次に、次の CSS を使用して、強調表示を任意のスタイルに設定できます。

::-moz-selection {
    color: #fff;
    background: #39f;
}
于 2014-07-31T14:27:35.043 に答える