Я занимаюсь стилизацией меню 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 не применяются независимо от выбранного или наведенного состояния элемента.
Что я должен сделать, чтобы сделать эту работу?
Спасибо.
РЕДАКТИРОВАТЬ: Извините, я должен был упомянуть, что это .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 за кулисами, и это неправильно.