以下代码显示了一个弹出菜单。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position ul</title>
<style type="text/css">
html, body, div, ul {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
#main {
position:relative;
width:950px;
height:30px;
margin:75px auto 0;/*75px beneath top of page, auto distance from page's right/left side*/
border:2px solid #8c8b4b;
}
#main li {
width:92px;
height:30px;
float:left;
list-style-type:none;
border:2px solid red;
}
#main li a { text-decoration:none; }
#main li ul li {
width:400px;
border:2px solid #8c8b4b;
height:30px;
}
li.menu1 { background-image:url('images/men1.png'); }
li.menu2 { background-image:url('images/men1.png'); }
.menu2 li a {
color:white;
font-weight:bold;
}
li.menu2 div {
position:absolute;
margin-left:-999em;
padding-top:200px;
}
li.menu2 ul {
top:400px;
list-style:none;
margin:0;
font-size:110%;
}
li.menu2:hover div { margin:0; }
li.menu2:hover ul li { clear:left; }
ul li ul.rounded-corner {
border:2px solid red;
height: 200px;
width:776px;
background-image:url(../banner/bg_to_sitepoint.gif);
background-repeat:no-repeat;
-webkit-border-radius:50px;
-moz-border-radius:50px;
border-radius:50px;
}
</style>
</head>
<body>
<ul id="main">
<li class="menu1"><a href="#">menu item1</a></li>
<li class="menu2">menu item2
<div>
<ul class="rounded-corner">
<li><a href="#">submenu2 item1</a></li>
<li><a href="#">submenu2 item2</a></li>
<li><a href="#">submenu2 item3</a></li>
</ul>
</div>
</li>
</ul>
</body>
</html>
子菜单由位于 div 内的 ul 实体组成。我想改变 ul 在其祖先中的位置:一个 div。我添加:“顶部:100px;” 到“li.menu2 ul”选择器并看不到任何影响。“左”值也不好。谁能解释一下为什么我不能让那个 ul 在它的 div 中重新定位?我怎样才能让它移动到div中的其他地方?附件是我想更改的当前页面的屏幕截图。非常感谢 !