我对网站开发比较陌生,但我是一名经验丰富的程序员,所以我应该能够轻松掌握网站开发。所以,我遇到了一些我需要一些洞察力的东西。
<!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
}
它有效,但是当你将鼠标悬停在整个事物的任何地方时,它都有效,而不是“菜单”。当你只悬停“菜单”部分时,我需要做些什么呢?它会使“菜单”部分变亮?
答案 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。