我已经在这个小时了。我可以找到我想要的单个组件,但我似乎无法将它们放在一起。在一个动态水平菜单下居中放置一个静态宽度的垂直子菜单
我遇到的问题是我无法获得静态宽度子菜单,以它们派生自的li项为中心。这应该很容易,如果那些父李项目有静态宽度,但我想动态改变他们的宽度根据页面的宽度。我不知道这是否令人满意,但这是我想要做的事情,并且不想静态化。我会将宽度设置为100%,但当页面变得非常宽时(我之所以选择它们是静态的),它们往往看起来很愚蠢(我之所以选择它们是静态的原因)
我确信还有其他更改我应该对css结构以及使它更好,所以如果你有任何提示,请把它们扔给我!
这就是我所拥有的。
的jsfiddle:http://jsfiddle.net/ede2gsc6/
的HTML:
<ul id="top-menu">
<li>ITEM1</li>
<li>ITEM2
<ul>
<li>SUBITEM1</li>
<li>SUBITEM2</li>
</ul>
</li>
<li>ITEM3
<ul >
<li>SUBITEM1</li>
<li>SUBITEM2</li>
<li>SUBITEM3</li>
</ul>
</li>
<li>ITEM4</li>
<li>ITEM5
<ul>
<li>SUBITEM1</li>
<li>SUBITEM2</li>
<li>SUBITEM3</li>
<li>SUBITEM4</li>
<li>SUBITEM5</li>
</ul>
</li>
</ul>
和CSS:
body, ul {
margin: 0;
padding: 0;
}
#top-menu{
float: left;
width:100%;
background-color: rgba(0,240,255,.5);
border-top: 1px solid black;
border-bottom: 1px solid black;
text-align: center;
padding: 0px;
margin: 0px;
min-width: 620px;
list-style: none;
}
#top-menu li {
float: left;
position: relative;
width: 20%;
list-style: none;
}
#top-menu a:hover {
color: #00F0FF;
}
#top-menu li ul {
padding-top: 1px;
position: absolute;
background: rgba(0,240,255,.5);
border-bottom: 1px solid black;
border-left: 1px solid black;
border-right: 1px solid black;
visibility: hidden;
width: 170px;
}
#top-menu li:hover ul {
visibility: visible;
display: block;
}
#top-menu li ul li {
float: left;
padding: 0px;
width: 100%;
text-align: left;
}
这是我尝试工作的方法,但我不能。谢谢! – 2014-11-05 04:00:22