悬停在特定的div上

时间:2013-12-16 21:08:03

标签: html css

我对网站开发比较陌生,但我是一名经验丰富的程序员,所以我应该能够轻松掌握网站开发。所以,我遇到了一些我需要一些洞察力的东西。

<!DOCTYPE html>
<html>
<body>

<style>
#menu:hover .inner {
    opacity: 0.8
}
</style>

<div id="container" style="width:500px">

<div id="header" style="background-color:#ccdbe8;">
<h1 style="margin-bottom:0;">title</h1></div>

<div id="menu" class="inner" style="color:white;background-color:#4e81b1;height:200px;width:100px;float:left;">
<b>Menu</b><br>
HTML<br>
CSS<br>
JavaScript</div>

<div id="content" style="color:white;background-color:#1c5d9b;height:200px;width:400px;float:left;">
Content goes here</div>

<div id="footer" style="background-color:#ccdbe8;clear:both;text-align:center;">
Copyright ? W3Schools.com</div>

</div>

</body>

</html>

我正试着这样做,当我专门悬停“菜单”时,它会使“菜单”背景变得更轻,因此不透明。然而,这不起作用,它甚至没有做任何更轻的。

如果我改变:

#menu:hover .inner {
    opacity: 0.8
}

要:

#container:hover .inner {
    opacity: 0.8
}

它有效,但是当你将鼠标悬停在整个事物的任何地方时,它都有效,而不是“菜单”。当你只悬停“菜单”部分时,我需要做些什么呢?它会使“菜单”部分变亮?

2 个答案:

答案 0 :(得分:4)

#menu:hover就是你所追求的。 #menu:hover .inner正在查找具有类inner的元素,该元素是具有ID“菜单”的元素的后代。

#menu:hover {
    opacity: 0.8
}

<强> jsFiddle example

答案 1 :(得分:1)

我所做的这个小提示将向您展示如何为悬停状态定位对象。

/* hovers */

.parent:hover { /* no matter where you hover in the parent this will happen */
    background: mediumSeaGreen;
}

.parent:hover .inner { /* if the parent is hovered on then make this change to .inner */
    opacity: 0.6;
}

#menu.alt:hover { /* selecting an object with an id of menu and a class of alt to make these changes */
    background: mediumSlateBlue;
}

.alt:hover { /* basic hover state */
    border-left: 10px solid brown;
}

这是一个小提琴,JSFIDDLE