2013-06-20 7 views
2

asp.net 메뉴 항목 사이에 공백을 넣고 싶습니다. 따라서 나는 다른 게시물에 의해 제안 된 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 Framework 버전을 사용하고 있습니까? Menu 컨트롤은 4.0에서'ul', 이전 버전에서는'table'로 표현됩니다. 그러면 CSS를 통해 간격을 제어 할 수 있습니다. – juanreyesv

+0

.NET Framework 4.0을 사용하고 있습니다. @ juanreyesv 내가 CSS에서 어떻게 처리 할 수 ​​있는지 알려 주시기 바랍니다. – Smaug

답변

2

당신은 당신의 코드에서

당신이 당신의 Menu 컨트롤에 CssClass 속성을 asigned 것을 달성하기 위해 CSS Selectors을 사용할 수 있습니다. "menu"라는 CSS 클래스를 사용하고 페이지에서 재정의하십시오 (나중에 CSS 파일로 이동할 수 있음). 그래서 당신은 메뉴의 첫 번째 요소의 왼쪽 패딩을받지 않습니다 그래서 나는 .menu ul > li:first-child 선택기를 추가 한 점에 유의하시기 바랍니다 <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> 

에있는 당신의 페이지에이를 추가, 난 그냥 당신에게 예를주기 위해 font-size 변경 CSS 선택기가 제공하는 컨트롤 원하는 경우 제거 할 수 있습니다.

희망이 무엇입니까