IE:链接到文件的条件注释

时间:2009-02-04 23:32:58

标签: html

所有。我在IE中使用条件注释来修复我在IE7中遇到的一些CSS问题。

我有一个可以在firefox和ie7上运行的all.css文件,其中包含一些只会修复IE7 css问题的execptions。我把我的修复程序放在all_iefixes.css上,这两个文件都在App_Themes / Default /文件夹中。

我使用的是我的所有页面都继承的母版页(Default.master)。例如,在另一个文件夹中的某个页面上,localhost / myapp / blah1 / blah.aspx将无法获取App_Themes / Default文件夹中的all_iefixes.css如果我更改了

<!--[if IE]><style type="text/css">@import "all_iefixes.css";</style><![endif]-->

<!--[if IE]><style type="text/css">@import "./../App_Themes/Default/all_iefixes.css";</style><![endif]-->

然后它将适用于blah1文件夹中的页面,但它会破坏其他不在blah1文件夹中的页面。

我想我可以创建几个母版页并依赖于我想把我的aspx页面放到哪里,然后我可以调整链接,但我认为这是一个相当“愚蠢”的修复(?)。是否有一种优雅的方式来做到这一点。

杰克

2 个答案:

答案 0 :(得分:3)

您应该避免在母版页中使用相对路径,除非您可以使用代码生成它:

您可以尝试使用服务器标记来解析路径,但这并不总是可行的(例如,如果您在代码中操作控制树)

@import "<% this.ResolveUrl("~/App_Themes/Default/all_iefixes.css") %>";

答案 1 :(得分:0)

+1来自ablove。但是,我宁愿使用browser files in ASP.NET