无论如何要区分这两种情况,以便我可以改变我的信息:
请从IE7更新到您使用的是IE8,但是您使用的是兼容模式,请关闭它
这是我现在在我的视图中使用的代码:
You are using <b><% = Request.Browser.Browser + ",Version: " + Request.Browser.Version%>
但如果我在IE8中使用兼容性视图进行测试,则在客户端使用上面的代码或此代码:
<!--[if lte IE 7]>
它返回true并显示为IE7.我如何区分这两者?
解决方法
>对于MSIE 7.0:检查MSIE 7.0和缺少三叉戟
例如:Mozilla / 4.0(兼容; MSIE 7.0; Windows NT 5.1; GTB5;用户代理:Mozilla / 4.0(兼容; MSIE 6.0; Windows NT 5.1; SV1; http://bsalsa.com); .NET CLR 2.0 0.50727)
>对于兼容模式下的MSIE 8.0:检查MSIE 7.0和Trident / 4.0的存在
例如:Mozilla / 4.0(兼容; MSIE 7.0; Windows NT 6.1; Trident / 4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0)
>对于标准模式下的MSIE 8.0:检查MSIE 8.0
例如:Mozilla / 4.0(兼容; MSIE 8.0; Windows NT 5.1; Trident / 4.0; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648)
要执行这些检查,请参阅the following tutorial,用您要检查的浏览器替换所有关于iPhone和移动设备的废话.