我正在制作一个必须在 FF/IE6/IE7/Opera/Safari 上正确呈现的网站。 IE6 是一个较晚的要求(当我完成所有其他浏览器时),它只需要可用,不一定与其他浏览器相同。现在我正在调整它,以便它也可以在 IE6 上使用。
为此,我在我的主题中创建了另一个样式表,名为 IE6_override.css
。您可能已经猜到了,我希望它仅在浏览器为 IE6 时应用。有条件的评论非常适合这个。
唯一的问题是 - ASP.NET 为主题文件夹中的每个 CSS 文件呈现一个 <link>
标记,从而在所有浏览器上无条件地包含该文件。
我想坚持主题,因为我们以后可以为我们的应用程序创建更多皮肤是完全可行的(如果客户需要的话)。
有什么办法可以让 ASP.NET 从它的自动包含中排除这个特定的 .CSS 文件?
补充: 感谢您的回答!最后我找到了一个解决方法。由于我之前遇到过 asked about 的一些其他样式问题,我也不得不使用 IE6-workaround Javascript。因此,我使用 .ie6_dummy
类选择器作为所有 IE6 特定规则的前缀,然后在页面加载时在 JS 中将其删除。 :)
最佳答案
我不认为你可以。正是出于这个原因,我们停止使用 App_Themes 文件夹。这也让我们不必为每个 css 文件添加一个数字前缀,以便它们以正确的顺序加载。
关于asp.net - 如何从 ASP.NET 主题中排除特定的 CSS 文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/553482/