只借助HTML分别禁用IE8, IE9的兼容视图模式(Compatibility View)

从 IE 8 开始,IE 添加了兼容模式,开启后会以低一版本的 IE 进行渲染。但是有时这样会导致网页出问题,于是我们通常在 html 中添加下列代码来使 IE 使用固定的渲染模式:

XHTML

1

2

<meta http-equiv="X-UA-Compatible" content="IE=8"> <!--以IE8模式渲染-->

<meta http-equiv="X-UA-Compatible" content="IE=7"> <!--以IE7模式渲染-->

但是我就遇到了一种情况,在 IE8 下只有不使用兼容模式页面才能显示正常,但是如果设定为 IE8 的模式,在 IE9 中却会导致 CSS3 失效。看来,我需要针对 IE8、IE9 分别 禁用兼容模式。怎么办呢?可以在后台判断浏览器版本,如果是 IE8 就输出content="IE=8",如果是 IE9 就输出content="IE=9"。但是这样 html 是无法实现的。其实,可以单纯使用下面的代码来实现:

XHTML

1

<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE">

我测试后完全解决了问题。这样设置后,IE 中设置兼容模式的按钮也会消失。你可以按 F12 打开开发模式来检查。

 Renfei Song,来自 http://www.renfei.org/blog/disable-ie-compatibility-view.html(CC-BY-NC-SA)。

原文地址:https://www.cnblogs.com/potoofly/p/3116637.html