要素がホバーされたときに要素の変更に続く兄弟を作成できます。たとえば、ホバーされa
たときにリンクの色を変更できますが、前の兄弟に同じようにh1
影響を与えることはできません。
h1 {
color: #4fa04f;
}
h1 + a {
color: #a04f4f;
}
h1:hover + a {
color: #4f4fd0;
}
a:hover + h1 {
background-color: #444;
}
<h1>Heading</h1>
<a class="button" href="#">The "Button"</a>
<h1>Another Heading</h1>
H1の色を緑がかった色に設定し、H1の兄弟であるAの色を赤みがかった色に設定します(最初の2つのルール)。3番目のルールは、私が説明したことを実行します。H1をホバーすると、Aの色が変わります。
ただし、4番目のルールは、アンカーに続くa:hover h1
H1の背景色のみを変更し、アンカーに先行するH1の背景色は変更しないことに注意してください。
これはDOMの順序に基づいており、要素の表示順序を変更できるため、前の要素を変更できなくても、その要素を他の要素の後に表示して、目的の効果を得ることができます。スクリーンリーダーは通常、視覚的な順序と同じではない可能性があるDOMの順序
で
アイテムをトラバースするため、これを行うとアクセシビリティに影響を与える可能性があることに注意してください。