我有一個菜單工作得很好,但無法弄清楚如何使第二級子菜單水平而不是垂直顯示。整個菜單隻需要2行,因此懸停在第一行應該在第二行水平顯示子菜單選項。現場看到它here。CSS - 如何水平顯示子菜單選項,同時保持水平主菜單選項的間距
期望:代替
option1 option2 option3
|
submenu_option1 submenu_option2
:
option1 option2 option3
|
submenu_option1
|
submenu_option2
CSS:
ul.AspNet-Menu
{
position: relative;
}
ul.AspNet-Menu,
ul.AspNet-Menu ul
{
margin: 0;
padding: 0;
display: block;
}
ul.AspNet-Menu li
{
position: relative;
list-style: none;
float: left;
}
ul.AspNet-Menu li a,
ul.AspNet-Menu li span
{
display: block;
text-decoration: none;
}
ul.AspNet-Menu ul
{
visibility: hidden;
position: absolute;
}
ul.AspNet-Menu li:hover ul ul,
ul.AspNet-Menu li.AspNet-Menu-Hover ul ul
{
visibility: hidden;
}
ul.AspNet-Menu li:hover ul,
ul.AspNet-Menu li li:hover ul,
ul.AspNet-Menu li li li:hover ul,
ul.AspNet-Menu li.AspNet-Menu-Hover ul,
ul.AspNet-Menu li li.AspNet-Menu-Hover ul,
ul.AspNet-Menu li li li.AspNet-Menu-Hover ul
{
visibility: visible;
}
ul.AspNet-Menu li
{
padding:2px 2px 2px 2px;
}
HTML:
<div class="main-nav2" id="MainMenu">
<div class="AspNet-Menu-Horizontal">
<ul class="AspNet-Menu">
<li class="AspNet-Menu-Item">
<a href="/CSSMenu/default.aspx">
<span> Main</span></a>
</li>
<li class="AspNet-Menu-Item">
<a href="/CSSMenu/Reports.aspx">
<span> Reports</span></a>
<ul>
<li class="AspNet-Menu-Item">
<a href="/CSSMenu/Snapshot.aspx">
Snapshot</a>
</li>
<li class="AspNet-Menu-Item">
<a href="/CSSMenu/Dashboard.aspx">
Dashboard</a>
</li>
</ul>
</li>
<li class="AspNet-Menu-Item">
<a href="/CSSMenu/Customer.aspx">
<span> Customer</span></a>
</li>
</ul>
</div>
</div>
我認爲它開始在這裏崩潰:
ul.AspNet-Menu ul
{
visibility: hidden;
position: absolute;
}
其中位置設置爲絕對。順便說一句,我用CSSFriendlyAdapters使用Asp.Net菜單控件。
任何提示或幫助將不勝感激!
感謝,
特里
你搖滾!非常感謝,我沒有意識到靜態定位。 – tblank 2010-03-03 19:14:19