デフォルトで非表示に設定した2つの子要素があります。
.child1, .child2{
visibility:hidden;
}
#parent :hover .child1, #parent:hover .child2{
visibility:visible;
}
ご覧のとおり、親にカーソルを合わせると、子が表示されます。これまでのところ簡単です。
ここで注意が必要な部分があります。子供のうちの1人にカーソルを合わせると、他のすべての子供が再び隠れるようになります。したがって、child1にカーソルを合わせると、child2は表示されなくなります。私は、いわば親のホバリングを「元に戻す」ことを望み、ホバリングしている子供だけを表示したままにします。
親:ホバーをオーバーライドまたは元に戻すにはどうすればよいですか?
編集: 私はこれを見つけました、それは正しい方向に進んでいます:
#parent:hover > .child1:hover{
do something;
}
基本的に、親と子1の両方にカーソルを合わせると、スタイルが子1に適用されます。これが私が探しているものですが、問題は、child1ではなくchild2にスタイルを適用するにはどうすればよいかということです。
Edit2: 別のアイデアは次のようなものを使用することです:
#parent:hover >.children:not(.child1){
do something;
}
これにより、child1ではない親のすべての子が選択され、スタイルが適用されます。繰り返しになりますが、問題:これは、親だけをホバリングしたときにのみトリガーされます。親と子1がホバーされたときに、これとまったく同じ効果をトリガーするにはどうすればよいですか?