2013-06-20 75 views
2

我想給asp.net菜單項之間的空間。因此,我嘗試使用SO中的其他帖子所建議的staticmenuitemstylehorizontalpadding="10"屬性。但是,它不工作。在菜單項之間的項目空間不在asp.net工作

<staticmenuitemstyle horizontalpadding="10" /> 

請讓我知道如何給菜單項之間的空間?

我的代碼::

<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" 
      EnableViewState="False" IncludeStyleBlock="False" Orientation="Horizontal" 
      BackColor="#F7F6F3" DynamicHorizontalOffset="2" Font-Names="Verdana" 
      Font-Size="0.8em" ForeColor="#7C6F57" StaticSubMenuIndent="10px"> 
     <DynamicHoverStyle BackColor="#7C6F57" ForeColor="White" /> 
     <DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" /> 
     <DynamicMenuStyle BackColor="#F7F6F3" /> 
     <DynamicSelectedStyle BackColor="#5D7B9D" /> 
     <staticmenuitemstyle horizontalpadding="10" /> 
     <Items> 
      <asp:MenuItem NavigateUrl="~/WebPages/Default.aspx" Text="Support1"> 
      <asp:MenuItem NavigateUrl="~/WebPages/Default2.aspx" Text="Support2"> 
     </Items> 
</asp:Menu> 
+0

你正在使用哪種.NET框架版本? Menu控件在4.0中呈現爲「ul」,在之前的版本中呈現爲「table」。據說,你可以通過CSS來控制間距。 – juanreyesv

+0

我正在使用.NET Framework 4.0。 @juanreyesv請讓我知道我如何處理CSS? – Smaug

回答

2

您可以使用CSS Selectors實現這一

在你的代碼已經asigned的CssClass屬性您Menu控制。使用名爲「菜單」的CSS類並在頁面中覆蓋它(可以稍後將其移至一個css文件中)。因此,添加到您的網頁在<head>

<style type="text/css"> 
    .menu li ~ li 
    { 
     padding-left: 100px; /* selects every <li> element that are preceded by a <li> element. */ 
     list-style:none; 
    } 

    .menu ul > li:first-child 
    { 
     font-size:20px;/* this one will select the first element of your menu */ 
    } 
</style> 

請注意,我說的.menu ul > li:first-child選擇,所以你不會得到菜單的第一個元素的左填充,我只是改變了font-size給你一個例子CSS選擇器提供的控件。如果你喜歡,你可以刪除它。

希望這可以幫到你