我正在尝试使用水平下拉菜单实现水平导航菜单。我试图弄清楚如何将水平下拉文本居中,使其位于导航容器的中心,这样用户就不必将鼠标向左移动到达链接。
<style type="text/css">
#nav-container {
padding: 4px;
width: 900px;
height: 60px;
background: #CCC;
}
#navbar {
margin:0;
padding:0;
}
#navbar li {
padding: 6px;
display: inline;
list-style: none;
}
#navbar li ul {
display: none;
position: absolute;
margin:0;
padding:0;
width: 900px;
}
#navbar li:hover ul {
display: block;
}
</style>
</head>
<body>
<div id="nav-container">
<ul id="navbar">
<li><a href="#">Link</a>
<ul>
<li><a href="#">Hello</a></li>
<li><a href="#">World</a></li>
</ul>
</li>
<li><a href="#">Link</a>
<ul>
<li><a href="#">Peace</a></li>
<li><a href="#">Love</a></li>
</ul>
</li>
<li><a href="#">Link</a>
<ul>
<li><a href="#">Smiles</a></li>
<li><a href="#">Cries</a></li>
</ul>
</li>
<li><a href="#">Link</a>
<ul>
<li><a href="#">Homer</a></li>
<li><a href="#">Peter</a></li>
</ul>
</li>
<li><a href="#">Link</a>
<ul>
<li><a href="#">Giggity</a></li>
<li><a href="#">Fapping</a></li>
</ul>
</li>
<li><a href="#">Link</a>
<ul>
<li><a href="#">Napster</a></li>
<li><a href="#">Myspace</a></li>
</ul>
</li>
</ul>
</div>
这是粗略的代码,只是为了展示一个例子,这里是代码的live example。
由于
答案 0 :(得分:2)
相对绝对定位的组合应该可以解决问题。我尝试添加这两个规则,这似乎有效:
#navbar li {
position: relative;
}
#navbar li ul {
position: absolute;
left: 0;
top: 24px; /* must me same as the height of parent li +/- a couple of pixels */
}
这似乎可以解决问题。