4

我有一个下拉菜单,它在悬停时<ul/>显示第二个列表。<ul/>

因此:

<ul id="NavBar">
    <li><a href="#">News & Press Releases</a>
        <ul class="NavBar_drop">
            <li><a href="#">OCPO Home</a></li>
            <li><a href="#">Press Releases</a></li>
            <li><a href="#">Ocean County Government</a></li>
        </ul>
    </li>
</ul>

当您将鼠标悬停在“新闻和新闻稿”锚标签上时,会发生以下效果:

#NavBar > li > a:hover {
    -moz-border-radius: 5px 5px 0px 0px;
    -webkit-border-radius: 5px 5px 0px 0px;
    border-radius: 5px 5px 0px 0px;
    background: #F4F4F4;
    background: -moz-linear-gradient(top, #EEEEEE, #BBBBBB);
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#EEEEEE), to(#BBBBBB));
    color: #000;
}

但是,当您移动到任何子链接(例如“OCPO Home”)时,上述悬停的效果就会消失。显然我将不得不强迫它继续使用另一个 CSS 标签,但我不知道我做错了什么。这是我的尝试:

.NavBar_drop:hover #NavBar > li > a {
    -moz-border-radius: 5px 5px 0px 0px;
    -webkit-border-radius: 5px 5px 0px 0px;
    border-radius: 5px 5px 0px 0px;
    background: #F4F4F4;
    background: -moz-linear-gradient(top, #EEEEEE, #BBBBBB);
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#EEEEEE), to(#BBBBBB));
    color: #000;
}
4

3 回答 3

2

从技术上讲,您不能触发对父元素的影响。但是,鉴于您所说的问题,您实际上并不需要这样做。当您移动到子链接时,您正在关闭<a>; 因此悬停效果停止。更改选择器,以便在您将鼠标悬停在父级上时触发它<li>

#NavBar > li:hover { 
    /* CSS Styles here... */
}
于 2013-05-31T19:15:52.637 回答
1

替代 Dre 的回答,如果您只想<a>在整个中突出显示您的时间<li>,请尝试使用此 css 规则:

#NavBar > li:hover > a {

查看工作演示

于 2013-05-31T19:18:13.050 回答
0

您无法在级联样式表中选择父元素,因此您尝试的操作是不可能的

于 2013-05-31T19:07:14.803 回答