他のcssクラスに依存して動作するcssクラスを定義することは可能ですか?
例えば; いつ
a:hover
次に設定したい
p {background:#fff;}
これは純粋なCSSで可能ですか?
編集:ネストされた関係が存在しないと仮定します。
他のcssクラスに依存して動作するcssクラスを定義することは可能ですか?
例えば; いつ
a:hover
次に設定したい
p {background:#fff;}
これは純粋なCSSで可能ですか?
編集:ネストされた関係が存在しないと仮定します。
このような構造の場合:
<a><p>...</p></a>
次にこれ:
a:hover p {background: #fff;}
動作します。ただし、ブロック要素はインライン要素の内側に配置しないでください(この場合、<p>
内側には配置しないでください)<a>
マークアップが有効で、次のようになっている場合:
<p><a>...</a></p>
その後、あなたは持つことができます
p:hover {background: #fff;}
ただし、子孫は親cssに影響を与えることはできません(javascriptを使用しない限り)が、反対のことが当てはまります(親cssは子孫に影響を与えます)
p
DOMのどこにあるかに関係なく、すべての人にそのスタイルを持たせたいという意味であればa:hover
、いいえ、それはできません。ホバーを受け取ったときに、スクリプトを使用してスタイル(またはそのスタイルを含むクラス)をp
要素に適用する必要があります。a
創造性がほとんどなく、なぜこれらの制限に制限されるのかわかりません。固定ポジショニングを使用する場合、子孫はその親とオーバーラップする可能性があります。それでも子孫のように反応します。
<p>
タグがタグの直後にある場合は<a>
、隣接する兄弟セレクターを使用できます。
a:hover+p{
background:#fff;
}
これはIE8+でサポートされています