我有如下代码:
<nav id="mainNav" class="">
<div id="navContainer">
<div id="active">
[ some list ]
</div><!-- #active -->
</div><!-- #navContainer -->
</nav><!-- #mainNav -->
我想在用户将鼠标悬停在#active 上时更改#mainNav 的背景颜色,但我不知道该怎么做。我这样做了,但没有结果:
#active:hover #mainNav{
background-color: #333;
}
有什么想法吗?
使用 JS 或尝试不同的方法,仅限 CSS:
http://jsfiddle.net/coma/zxybD/5/
HTML
<div id="main">
<a href="#" class="red">red</a>
<a href="#" class="green">green</a>
<a href="#" class="blue">blue</a>
<div></div>
</div>
CSS
#main {
position: relative;
}
#main > a {
display: block;
padding: .5em;
}
#main > div {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #eee;
z-index: -1;
}
#main > a.red:hover ~ div {
background-color: red;
}
#main > a.green:hover ~ div {
background-color: green;
}
#main > a.blue:hover ~ div {
background-color: blue;
}