2012-01-15 15 views
8

CSS3の擬似要素selectionがハイライトのすべての部分を変更しないのはなぜですか?あなたはこのスクリーンショットで見ることができるように私は、ページの一部を選択し、選択の部品ているデフォルトの明るい青の色です:CSS3の擬似::選択がすべての部品の色を変更しないのはなぜですか?

enter image description here

これは私が使用しているCSSで、それはですCSSファイルの先頭:

::selection { background: #3B3B3B; color: #fff; } 
::-moz-selection { background: #3B3B3B; color: #fff; } 

入力(テキスト、チェックボックスなど)のハイライトのようで、空白は変わりません。誰もがこれがなぜであるか知っていますか?のすべてのの部分にそれを変更する方法がありますので、ハイライトの色は一貫していますか?私はChromeを使用しています。

答えて

11

::selection Chrome/Safariでは疑似要素が正しく機能しません。 <input>要素が標準的なハイライトカラーになります。それは非常に古い、まだ未解決のバグです:

https://bugs.webkit.org/show_bug.cgi?id=38943

私はcontenteditable要素の代わりに、<input>要素を使用している思い付くことができました唯一の回避策。 http://jsfiddle.net/ThinkingStiff/FcCgA/
そして私はそれについて書いた記事:

ここで私が作成したデモですhttps://stackoverflow.com/a/8529323/918414

+0

ああ、私は参照してください。ありがとう。うまくいけば、非常に厄介なバグであるので、Webkitチームがすぐにそれを修正することを望みます。ちなみに、上にリンクしたjsFiddleデモで、Stack Overflowの小さなバナーをどうやって取得しましたか?あなたのjsFiddleのHTMLボックスのどこにでもマークアップは表示されません。 – Nathan

+0

@Nathan HTMLボックス内をスクロールダウンします。 – ThinkingStiff

+0

ああ。見なかった:P – Nathan

関連する問題