标题说明了一切;我的css:
a.menu:hover {
opacity: 1;
text-shadow: 0 0 10px white;
}
a.menu:hover ~ .dropdown {
display: block;
}
.dropdown {
display: none;
width: 50px;
height: 50px;
position: absolute;
top: 120px;
left: 120px;
background: red;
}
HTML:
<p class="left_topbar">
<a href="http://teamcowgames.net" class="logo"><img src="css/img/logo.png"></a>
<a href="http://teamcowgames.net/games" class="menu">Games ▾</a>
</p>
<div class="dropdown"></div>
当鼠标悬停在菜单链接上时,为什么.dropdown现在可见?
答案 0 :(得分:2)
实际上,您的h2
不是h1
代码的子代。您必须使用sibling operator(+)
来实现此目的。
h1:hover + h2{
display: block;
}
上述解决方案将指向下一个直接的兄弟元素。如果您想要定位所有元素,请使用~
运算符。
h1:hover ~ h2{
display: block;
}
修改强>
根据您的修改,您似乎必须更改下面的顺序。
a.menu:hover {
opacity: 1;
text-shadow: 0 0 10px white;
}
.dropdown {
display: none;
width: 50px;
height: 50px;
position: absolute;
top: 120px;
left: 120px;
background: red;
}
a.menu:hover ~ .dropdown {
display: block;
}
<强> HTML 强>
<div class="left_topbar">
<a href="http://teamcowgames.net" class="logo"><img src="css/img/logo.png"></a>
<a href="http://teamcowgames.net/games" class="menu">Games ▾</a>
<div class="dropdown"></div>
</div>
答案 1 :(得分:1)
您想要更改
>
到
+
由于箭头是后代选择器,而加号是兄弟选择器。