我正在尝试在悬停在图像上时放大图像,并在将鼠标悬停在该图像上时显示带有文本的div.扩大的作品,但显示其他div没有.
<div id="punt1">
<div id="puntnaam1" class="puntnaam">Ieplaan</div>
<img class="punt"src="ieplaan1.jpg">
</div>
Run Code Online (Sandbox Code Playgroud)
对于我使用的CSS:
.punt{
height: 100px;
width: 100px;
}
.puntnaam{
display: none;
}
.punt:hover{
transform: scale(3);
}
.punt:hover .puntnaam{
display: block;
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
您无法使用CSS在DOM中选择以前的兄弟元素或父元素.您只能选择下一个兄弟姐妹或子元素.
例如,如果您将代码更改为:
<div id="punt1">
<img class="punt"src="ieplaan1.jpg">
<div id="puntnaam1" class="puntnaam">Ieplaan</div>
</div>
Run Code Online (Sandbox Code Playgroud)
然后你的选择器看起来像这样:
.punt:hover + .puntnaam{
display: block;
}
Run Code Online (Sandbox Code Playgroud)
因为现在<div>是下一个兄弟姐妹<img>