Javascript によって生成された SPAN でラップされたテキストがあり、生成時にインライン スタイルが含まれています。次のようなものです:
<div id="test">
<span style="color: red">Text 1</span>
<span style="color: blue">Text 2</span>
<span style="color: green">Text 3</span>
...
</div>
ただし、通常はすべてのテキストを 1 つの色にしたいので、ホバー時にのみインラインで定義された特別な色が表示されるようにします。もちろん問題は、非ホバー スタイルのインライン スタイルをオーバーライドするために、!important
宣言を含める必要があることです。その後、スタイリングを定義するとき、私:hover
にできることは何もありません。
#test > span {
color: black !important;
}
#test:hover > span {
color: inline; // Does not exist!
}
私が知らないオプションはありますか?または、これを達成するためのより良い方法はありますか?
Javascript onmouseover を実行してインライン スタイルを追加してから、onmouseout を削除することはできません。誰かがそれを提案したい場合に備えて。
編集:
すべてのテキスト SPAN を親 SPAN に埋め込み、親にインライン スタイルを適用し、重要なフラグを介して子を均一な色に強制し、ホバー時に子をinherit
親から強制的に離します。 ……それでいいじゃないですか。もっとエレガントなものはありますか?