我想构建一个菜单,每个<li>
都会徘徊。但奇怪的是整个菜单总是徘徊不去。这是fiddle code.
我有以下css代码:
body {
background-color: #eee;
margin: 0;
padding: 0;
overflow: hidden;
}
.tabs {
width: 80%;
position: fixed;
bottom: -20px;
left: 100px;
}
.tabs ul {
display:block;
}
.tabs li {
width: 60px;
height: 80px;
margin-bottom: -20px;
padding: 10px;
float: left;
list-style: none;
display: inline;
background-color: #ccc;
-moz-border-radius-topleft: 10px;
-moz-border-radius-topright: 10px;
-moz-border-radius-bottomright: 0px;
-moz-border-radius-bottomleft: 0px;
-webkit-border-radius: 10px 10px 0px 0px;
border-radius: 10px 10px 0px 0px;
font-family: verdana;
text-align: center;
}
.tabs li:hover {
margin-bottom: 20px;
}
答案 0 :(得分:2)
原因是当你给它保证金时,它会推送整个ul
。最好是bottom
代替margin
。写得像这样:
.tabs li:hover {
bottom: 20px;
}
答案 1 :(得分:2)
如果您熟悉它,使用jQuery将解决您的问题尝试此
jQuery("li").mouseover(function() {
jQuery(this).css("margin-bottom","20px");
}).mouseout(function(){
jQuery(this).css("margin-bottom","0px");
});
答案 2 :(得分:0)
这是因为您没有指定如何处理margin-top。这是一个更新的示例:http://jsfiddle.net/X96KE/18/
.tabs li:hover {
margin-bottom: -40px;
margin-top: -40px;
}