【发布时间】:2011-10-30 02:05:41
【问题描述】:
长话短说,几十页没有使用母版页。对于一个新模块,我创建了一个带有菜单控件的母版页(菜单控件已经存在),因此我可以在我现在创建的六个左右页面中获得相同的外观。由于内容页使用母版页,Menu 控件的名称更改为ct100_Menu1 而不仅仅是Menu1。除非有人决定使用控件的 exact 名称来设置菜单样式,并通过其确切 ID(例如 CSS 是 Menu1 a { /* stuff */ })来设置菜单样式,否则不会成为问题。所以菜单无法正确呈现因为我使用的是母版页,而不仅仅是复制代码。
我无法更改菜单文件中的 CSS 代码,因为它可能会破坏某些内容,所以有什么方法可以更改控件以不显示讨厌的 ct100,而无需添加任何工具或创建自己的工具自定义控件(因为我无法替换 Menu.ascx 控件,尽管我可以修改它以添加 CSS 类)或者是我唯一的选择,要么不使用母版页,要么将菜单 CSS 复制到另一个文件中并设置正确吗?
感觉有点进退两难,因为代码是特意编写的,因此您不能使用母版页,而且没有人回头更改它。
【问题讨论】:
-
使用 .NET 时使用类名而不是 ID 的另一个原因
-
可能会添加一个自定义响应过滤器,并使用正则表达式或其他东西解析出额外的位。 msdn.microsoft.com/en-us/library/…(我知道这是一件非常骇人听闻的事情,从长远来看这可能只会损害可维护性)
标签: asp.net css user-controls master-pages asp.net-3.5