【发布时间】:2011-02-08 23:13:51
【问题描述】:
我正在设计一个 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。不知道为什么。我知道我可以使用 selected 但不是应用 StaticSelectedStyle-CssClass 的预期行为???通过使用 selected 我假设 .NET 在幕后做了什么,这是不对的。
【问题讨论】:
-
它对我来说很好用(举个更简单的例子——例如,我的菜单没有数据绑定)。你能发布相关的 CSS 类,也许还有一些渲染的 HTML 吗?
-
感谢您的回复,刚刚回复。
-
在标记中查找一些设置悬停样式的 Javascript。在带有表格的原始布局中,所选样式仅在您单击其中一个菜单选项并且菜单执行回发后应用。
-
不,没有帮助。无论如何,我的课程都没有设置。看起来像一个错误。