2011-05-08 94 views
2

在我们的网站上,我们目前实施了阻止IE 6用户的逻辑。但IE 7同样蹩脚,它需要很多工作才能使样式表工作,所以我们正在决定是否阻止IE 7将会影响运行兼容模式的IE 8用户(它模仿IE 7),还是会阻止那些有7安装?我只想阻止那些使用IE 7的用户,但允许那些在IE兼容模式下使用IE 8的用户,但向他们显示该站点需要纯IE 8的警告。或者为了让生活更轻松,我可以阻止IE 8进入兼容模式?如果是的话如何做到这一点compability模式检查在PHP?阻止IE 7/IE 8兼容模式用户?

+0

不确定的数字,但我非常确定,IE7仍然命令10%的市场份额,那么明智吗? – 2011-05-08 18:16:47

+0

@Richard - http://gs.statcounter.com/#browser_version-ww-monthly-201004-201104是浏览器/版本使用情况的有用视图... IE7目前运行时间约为7% – 2011-05-08 18:20:32

+0

@Mark Ba​​ker:谢谢为统计。 – 2011-05-08 18:25:07

回答

1

您可以防止IE浏览器不兼容模式渲染通过添加以下到.htaccess文件:

Header set X-UA-Compatible: IE=Edge 

这将告诉IE页面总是渲染到IE(边缘)的最新版本

这是进一步讨论在这里:http://msdn.microsoft.com/en-us/library/cc288325(v=vs.85).aspx

或者你可以添加以下在您不希望在兼容模式下使用的页面的标题:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" > 
+0

这个效果很好。 – Uri 2011-05-09 01:12:43

2

不要根据他们使用的浏览器阻止访问者。以适用于所有浏览器的方式创建网站。使用progressive enhancement为使用浏览器的用户提供可用性增强,以更好地支持当前Web标准。

0

当IE8进入兼容模式时,它的行为就像IE7一样。

这意味着如果您允许在兼容模式下输入IE8,那么您几乎可以允许IE7。