Я боролся с этим некоторое время, у меня есть меню для моего сайта, однако у меня возникают проблемы с его выравниванием. Я могу получить основную часть меню для выравнивания, но у меня возникают проблемы с тем, чтобы заставить Sub-меню делать то же самое.
Это дает мне такой эффект:
HTML:
<div id="nav">
<ul>
<li><a >Home</a></li>
<li><a >Stuff</a></li>
<li><a >More Stuff</a></li>
<li><a >Suff with Sub stuff</a>
<ul>
<li><a >Sub thing 1</a></li>
<li><a >Sub thing 2</a></li>
</ul>
</li>
</ul>
и CSS: (я понимаю, что это может быть немного грязно из-за того, что я возился, пытаясь добиться правильного выравнивания)
#nav{
height:30px;
width:100%;
position:relative;
top:-60px;
background:#5D2C2C;
}
#nav a{
font:"Lucida Sans Unicode", "Lucida Grande", sans-serif;
color:#CCC;
text-decoration:none;
}
#nav ul{
height:20px;
top: 5px;
margin:0px;
list-style:none;
position: relative;
text-align:right;
}
#nav ul li{
margin:5px;
display: inline;
position:relative;
height:20px;
height:20px;
padding-left:10px;
overflow:hidden;
}
#nav ul li ul li{
list-style: none;
position:relative;
float:left;
width: 200px;
height:20px;
margin:0;
background:#5D2C2C;
}
#nav ul li ul{
height:20px;
padding: 0 0px 0 0px;
position:relative;
margin: 0 0 0 0;
width: 200px;
}
#nav ul li:hover{
background:#900;
overflow:visible;
}
#nav ul li ul li:hover{
background:#000;
overflow:visible;
}
любая помощь будет оценена
... или вы можете попробовать использовать абсолютное позиционирование для подэлемента, например:
#nav ul li ul{
position:absolute;
right:0px;
top:25px;
}
Не увидев скрипку, я бы, наверное, внес следующие изменения:
#nav ul li ul {
position:absolute;
top:100%;
left: 0;
width:200px;
}
Попробуйте использовать float: прямо в #nav ul li ul