在MVC中的IE7 Only样式表

4

我需要在我的ASP.NET MVC项目中使用仅适用于IE7的样式表。

如何更好地实现这一目标:

<!--[if IE 7]><link href="@Url.Content("~/Content/IE7.css")" rel="stylesheet" type="text/css" /><![endif]-->

或者

@if(Request.Browser.Browser == "IE" && Request.Browser.MajorVersion >= 7 && Request.Browser.MajorVersion < 8) {
    <link href="@Url.Content("~/Content/IE7.css")" rel="stylesheet" type="text/css" />
}

在MVC中是否有优先的方式来完成这个任务,还是它们基本上相等?


它有什么问题?你需要什么更好的方法?列出的这些是最流行的。 - Samich
两种方式都没有问题,但我想知道哪一种是更受欢迎的MVC方式(如果有的话)。 - Dismissile
1
绝对选择第一种方法,即IE条件注释。更加可靠。 - David Kolar
1个回答

2

你的两个选项完全做不同的事情。第一个选项 [if IE 7] 允许浏览器决定渲染什么。第二个选项则由服务器来决定。

第一个选项将与缓存层一起使用,这些缓存层假定所有浏览器应该看到相同的标记。而第二个选项则不会。

此外,考虑使用Modernizr而不是自己实现IE 7支持。


Modernizr有没有解决IE7 z-index bug的方法?我正在使用Telerik Grid控件,但在IE7中,筛选器被其他div标签遮挡。我尝试设置z-index,但在IE7中无效。 - Dismissile

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接