2010-08-17 24 views
1

我的CSS是這樣的:如何將DIV標籤中的asp:菜單對齊?

#menu 
{ 
width: 1024px; 
height: 25px; 
margin: 0 auto; 
text-align: right; 
background-color: Red; 
} 

我的ASP頁面看起來像這樣(在片段):

 <asp:Menu ID="mnuMainMenu" runat="server" BackColor="#F7F6F3" 
      DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="Medium" 
      ForeColor="#7C6F57" 
      Orientation="Horizontal" StaticSubMenuIndent="10px" Font-Bold="True"> 
      <StaticSelectedStyle BackColor="#5D7B9D" /> 
      <StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" /> 
      <DynamicHoverStyle BackColor="#7C6F57" ForeColor="White" /> 
      <DynamicMenuStyle BackColor="#F7F6F3" /> 
      <DynamicSelectedStyle BackColor="#5D7B9D" /> 
      <DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" /> 
      <StaticHoverStyle BackColor="#7C6F57" ForeColor="White" /> 
      <Items> 
       <asp:MenuItem Text="Projekty" Value="Projekty"></asp:MenuItem> 
       <asp:MenuItem Text="Licencje" Value="Licencje"></asp:MenuItem> 
       <asp:MenuItem Text="Kontrahenci" Value="Kontrahenci"></asp:MenuItem> 
      </Items> 
     </asp:Menu> 

我想有對準我的div標籤的右側菜單。對齊必須自動完成,如果我添加更多的菜單項目,應重新調整自己。 這在VS 2008中的分割視圖下按預期工作,但是在IE和FireFox中菜單對齊到左側。如何解決這個問題?

謝謝你的時間。

+0

將菜單包裝在一個div中並使其正確地浮動? – Joakim 2010-08-17 09:30:58

+0

謝謝,它的工作原理。你爲什麼不創建一個答案? – Wodzu 2010-08-17 09:39:58

回答

3

您可以將菜單包裝在div標籤中,並將其設置爲向右浮動,但這會使某些html標籤也可能浮動到其側面。

1

我已將您的代碼複製/粘貼到新的Web窗體中。 也許這會爲你工作: (我添加了一個類來在你的菜單div和它漂浮到右)

<head runat="server"> 
<title></title> 
<style type="text/css""> 
#menu 
{ 
width: 1024px; 
height: 25px; 
margin: 0 auto; 
text-align: right; 
background-color: Red; 
} 

#menuContainer{float: right;} 

</style></head> 

<body><form id="form1" runat="server"> 
<div id="menuContainer"> 

<asp:Menu ID="mnuMainMenu" runat="server" BackColor="#F7F6F3" 
     DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="Medium" 
     ForeColor="#7C6F57" 
     Orientation="Horizontal" StaticSubMenuIndent="10px" Font-Bold="True"> 
     <StaticSelectedStyle BackColor="#5D7B9D" /> 
     <StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" /> 
     <DynamicHoverStyle BackColor="#7C6F57" ForeColor="White" /> 
     <DynamicMenuStyle BackColor="#F7F6F3" /> 
     <DynamicSelectedStyle BackColor="#5D7B9D" /> 
     <DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" /> 
     <StaticHoverStyle BackColor="#7C6F57" ForeColor="White" /> 

     <Items> 
      <asp:MenuItem Text="Projekty" Value="Projekty"></asp:MenuItem> 
      <asp:MenuItem Text="Licencje" Value="Licencje"></asp:MenuItem> 
      <asp:MenuItem Text="Kontrahenci" Value="Kontrahenci"></asp:MenuItem> 
     </Items> 
    </asp:Menu> 
</div> 
</form> 

+0

感謝羅傑,喬金先是讓我給他答案。 – Wodzu 2010-08-17 10:03:10

+0

那麼,你的問題就解決了。這很重要! – Roger 2010-08-17 10:13:21

0

這是一個古老的線程,但目前的方式做到這一點在菜單本身的「Properties」中,只需放入StaticMenuStyle-CssClass="menu"並使用與上面相同的CSS樣式。