加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何阻止ASP.NET Menu控件生成内联html样式元素

发布时间:2020-12-15 19:53:45 所属栏目:asp.Net 来源:网络整理
导读:我有一个包含ASP.NET服务器端菜单控件的母版页(System.Web.UI.WebControls.Menu) 我在这里使用CSSFriendly适配器 http://www.asp.net/CSSAdapters/Menu.aspx 并且它们确实使渲染的HTML更加清晰,但是我仍然将内联样式输出到HTML中的HEAD元素中,就像这样 style
我有一个包含ASP.NET服务器端菜单控件的母版页(System.Web.UI.WebControls.Menu)

我在这里使用CSSFriendly适配器

http://www.asp.net/CSSAdapters/Menu.aspx

并且它们确实使渲染的HTML更加清晰,但是我仍然将内联样式输出到HTML中的HEAD元素中,就像这样

<style type="text/css">
    .ctl00_SiteHeader1_TabBar1_Menu1_0 { background-color:white;visibility:hidden;display:none;position:absolute;left:0px;top:0px; }
    .ctl00_SiteHeader1_TabBar1_Menu1_1 { text-decoration:none; }
    .ctl00_SiteHeader1_TabBar1_Menu1_2 {  }
    .ctl00_LeftColumnContent_LeftHandNavigator1_Menu1_0 { text-decoration:none; }

</style>
</head>

<body>

我认为这些样式是由ASP.NET生成的,我不认为我需要它们,因为我正在使用CSSAdapters所以有什么方法可以阻止它们被生成?

德里克

解决方法

简短的故事是它没有完成 easily.在预渲染阶段,该代码将被菜单添加到标题中.

可能的解决方法可能是在自定义菜单控件中覆盖菜单的onprerender而不调用base.然后,您可以使用tagMappings替换默认菜单控件.

如果可以,我建议您不要使用菜单控件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读