5

なぜ使用できないのかbody::selection、ハイライトできるものを希望の色にしたい場合は、p imglih1を含めます。

ここでの例今、私はすべてのハイライトを赤い色にしたいのですが、私は使用していますbody::selection、それは決して機能しません

http://jsfiddle.net/kent93/nu6ju/

4

2 に答える 2

15

選択の背景をすべての要素に適用する場合は、タイプセレクターを省略します。

::selection {
    background: red;
}

::-moz-selectionさらに、Firefoxでも機能するように追加します。

::-moz-selection {
    background: red;
}
::selection {
    background: red;
}

E::selection要素に設定したスタイルがのE子孫にどの程度正確に伝播するかは決定されていませんEwwwスタイルのメーリングリストには、さらに詳細な議論があります。::selectionCSS3 UIの最新のLCリビジョンでCSS3から完全に削除されたのも、この理由によるものです。このセクションを参照してください。

:: selection疑似要素は、テスト後に相互運用性の問題と調査/定義の詳細が見つかった後にセレクターから削除されたため、削除されました。

私の推測では、ブラウザ(少なくともFirefox)は子孫要素に同じルールを適用しないだけです。したがって、疑似要素をに適用すると、テキストbodyのみbodyがカスタム選択の背景になります。その中にネストされているものはすべて、選択の背景を持ちません。

于 2012-01-28T15:36:19.670 に答える
0

カスケードを停止したい場合は、追加できます

body *::selection { background: inherit; }

そのため、最上位のテキストのみが赤で選択されます。例: http: //jsfiddle.net/nu6ju/4/

于 2012-01-28T15:42:23.203 に答える