我想问一下能帮助我的人这两个CSS标签的区别在哪里。
.bmenu:hover li a{...}
VS
.bmenu li a:hover{...}
非常感谢您的帮助,并为我糟糕的英语而烦恼。
编辑1:我想主要解释一下,它们是如何工作的,因为在第一种情况下,后面有一个“li a”:hover。这意味着什么? THX
答案 0 :(得分:0)
为了解释这一点,我将使用这个示例代码:
<div class="bmenu">
<ul>
<li><a href="#">one</a></li>
<li><a href="#">two</a></li>
</ul>
</div>
如果您使用.bmenu:hover
,则表示您希望在悬停整个 .bmenu
div时应用CSS。
当您在.bmenu li a:hover
a
内悬停.bmenu
标记时,您说li
表示要应用CSS。
以下是我做的一个简单示例,顶部使用.bmenu:hover
方法,底部使用li a:hover
方法。 fiddle here
答案 1 :(得分:0)
在第一种情况下,<a>
将在您悬停.bmenu
时应用样式,在第二种情况下 - 当您将鼠标悬停在<a>
时。看看这两个块:
.bmenu1, .bmenu2 {
width: 200px;
height: 100px;
margin: 10px;
padding: 40px;
background-color: orange;
}
a {
display: block;
height: 100%;
width: 100%;
background-color: firebrick;
}
.bmenu1:hover a {
background-color: lightblue;
}
.bmenu2 a:hover {
background-color: lightblue;
}
&#13;
<div class="bmenu1">
<a href="#"></a>
</div>
<div class="bmenu2">
<a href="#"></a>
</div>
&#13;