当前位置: 首页 > 面试题库 >

如何使用CSS设置asp.net菜单的样式

李招
2023-03-14
问题内容

我正在设置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"
        Orientathtml" target="_blank">ion="Horizontal" 
        MaximumDynamicDisplayLevels="0" 
        runat="server">
</asp:Menu>

它适用于StaticMenuStyle-CssClass和StaticMenuStyle-
CssClass(将这些类应用于相关元素),但无论元素的选定状态或悬停状态如何,都不会应用StaticSelectedStyle-
CssClass和StaticHoverStyle-CssClass。

我应该怎么做才能完成这项工作?

谢谢。

编辑:抱歉,我应该提到这是.NET4。这是生成的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在幕后所做的事情进行了假设,这是不对的。


问题答案:

好的,因此到目前为止,显然没有很多人尝试过.NET
4菜单。最终版本是几天前发布的,这并不奇怪。我似乎是第一个报告似乎是错误的人。如果有时间,我会向MS报告此情况,但是鉴于MS一直以来不关注错误报告的记录,因此我不急于这样做。

无论如何,这时最差的解决方案是将控件生成的CSS样式(检查标题)复制并粘贴到自己的样式表中,然后从那里进行修改。完成此操作后,不要忘记在菜单上设置IncludeStyleBlock
=“
False”,以防止自动生成CSS,因为从现在开始我们将使用复制的块。从概念上讲,这是不正确的,因为您的应用程序不应依赖自动生成的代码,但这是我能想到的唯一选择。



 类似资料:
  • 问题内容: 我试图更改菜单按钮中的样式。我可以更改菜单按钮样式,但不能更改其菜单项。无论我尝试什么,菜单按钮内的菜单项都保持不变。 现在如何更改遗漏的颜色? 问题答案: MenuButton在Menu内部使用并具有类似的API。这样就MenuButton包含MenuItems列表,就像Menu。因此,我认为你需要尝试一起玩.menu,.menu-button并.menu-item在caspian.

  • 问题内容: 是否可以像使用文本一样使用CSS为外部.svg设置样式?我想念什么?我的标记和CSS看起来像这样: 问题答案: 如果像引用标签一样通过引用外部文件来包含svg图像,则svg图像中的元素将不包含在主文档DOM树中。他们组成了自己的树。因此,外部图像中的元素无法通过主文档中的CSS选择器进行匹配。 您可以像大多数其他元素一样设置元素的样式,例如为其设置边框。但是您不能(至少这样)访问外部图

  • 问题内容: 我有几个SVG图形,我想通过我的外部样式表修改颜色,而不是直接在每个SVG文件中修改。我不是将图形插入行中,而是将它们存储在我的图像文件夹中并指向它们。 我以这种方式实现了它们,以使工具提示能够正常工作,并且我还将每个工具提示都包装在标签中以允许链接。 这是SVG图形的代码: 我将以下内容放入我的外部CSS文件(main.css)中: 但是,它对图形没有影响。我还尝试了.socIcon

  • 问题内容: 我正在尝试使用以下样式设置复选框: 但是没有应用样式。复选框仍显示其默认样式。如何给它指定的样式? 问题答案: 更新: 以下答案引用了CSS 3广泛使用之前的状态。在现代浏览器(包括InternetExplorer9和更高版本)中,使用首选样式创建复选框替换更为简单,而无需使用JavaScript。 值得注意的是,基本问题没有改变。您仍然不能直接将样式(边框等)应用于复选框元素,并使这

  • 我是JavaFx新手。我在FXML中创建了一个网格窗格。我想将该网格窗格设置为下图。我尝试了以下答案,并尝试了更多的CSS元素。但这些都没有帮助我做到这一点。 用于GridPane、VBox、VBox的JavaFX CSS类 使用CSS在GridPane中居中显示子项 向GridPane JavaFX添加边框 我是否也使用了错误的方法?我可以使用GridPane实现这一点,还是TableView很

  • 本文向大家介绍如何在JavaFX中使用CSS设置分隔符的样式?,包括了如何在JavaFX中使用CSS设置分隔符的样式?的使用技巧和注意事项,需要的朋友参考一下 分隔符是水平或垂直线,用于分隔应用程序的UI元素。在JavaFX中,javafx.scene.control.Separator类代表一个分隔符,要创建一个分隔符,您需要实例化该类。您可以使用CSS控制分隔符的外观。 通过创建CSS文件并在