所以我有一个非常基本的CSS,如果你悬停一个按钮,就会显示图像.但我不明白为什么它不起作用.有没有我没有得到的规范?
#hoverMe:hover + img, #hoverMe:hover + p {
background-color:red;
display:block;
}
img {
display:none;
transition:0.5s;
}Run Code Online (Sandbox Code Playgroud)
<button id="hoverMe">HOVER ME</button>
<p>Test</p>
<div class="image">
<img src="http://www.placehold.it/350x200" id="image2">
</div>Run Code Online (Sandbox Code Playgroud)
这+是相邻的兄弟选择器.您的规则适用于p元素,因为它是相邻的.在div不相邻,而且img甚至不是在同一水平上.
相反,您可以使用常规兄弟选择器~来访问div,然后使用常规嵌套来选择img:
#hoverMe:hover ~ div img, #hoverMe:hover + p {
background-color:red;
display:block;
}
img {
display:none;
transition:0.5s;
}Run Code Online (Sandbox Code Playgroud)
<button id="hoverMe">HOVER ME</button>
<p>Test</p>
<div class="image">
<img src="http://www.placehold.it/350x200" id="image2">
</div>Run Code Online (Sandbox Code Playgroud)