3

我想在 asp.net 菜单项之间留一个空格。因此,我尝试使用SO 中其他帖子建议的staticmenuitemstyleand属性。horizontalpadding="10"但是,它不起作用。

<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>
4

1 回答 1

4

您可以使用CSS 选择器来实现这一点

在您的代码中,您已将CssClass属性分配给您的Menu控件。使用名为“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 选择器提供的控件示例。如果您愿意,可以将其删除。

希望这可以帮助你

于 2013-06-21T02:58:58.577 回答