Я занимаюсь стилем меню asp.net, и я пытаюсь понять значение параметров StaticSelectedStyle-CssClass и StaticHoverStyle-CssClass.
Я понимаю, что стили, определенные этими параметрами, применяются как классы CSS к соответствующим элементам, когда это необходимо. Поэтому я создал свое меню следующим образом:
<asp:Menu ID="NavigationMenu" DataSourceID="NavigationSiteMapDataSource"
StaticMenuStyle-CssClass="StaticMenuStyle"
StaticMenuItemStyle-CssClass="StaticMenuItemStyle"
StaticSelectedStyle-CssClass="StaticSelectedStyle"
StaticHoverStyle-CssClass="StaticHoverStyle"
Orientation="Horizontal"
MaximumDynamicDisplayLevels="0"
runat="server">
</asp:Menu>
Он работает для StaticMenuStyle-CssClass и StaticMenuStyle-CssClass (классы применяются к соответствующим элементам), но StaticSelectedStyle-CssClass и StaticHoverStyle-CssClass не применяются независимо от выбранного или зависающего состояния элемента.
Что я должен сделать, чтобы сделать эту работу?
Спасибо.
EDIT: Извините, я должен был упомянуть, что это .NET 4. Вот сгенерированный HTML:
<div id="NavigationMenu">
<ul class="level1 StaticMenuStyle">
<li><a class="level1 StaticMenuItemStyle selected" href="/Link.aspx">Link</a></li>
</ul>
</div>
Итак, как вы можете видеть, применяются StaticMenuStyle и StaticMenuItemStyle, но не StaticSelectedStyle-CssClass или StaticHoverStyle-CssClass. Не знаю, почему. Я знаю, что могу использовать выбранные, но не ожидаемое поведение, которое применяется StaticSelectedStyle-CssClass??? Используя выбранные, я делаю предположения относительно того, что .NET делает за кулисами и что не так.