即使使用 X-UA 元标记,IE9 也会进入 IE7 兼容性视图
IE9 going into IE7 compatibility view even with X-UA meta tag
因此,根据标题,我使用 X-UA-Compatible
元标记在当前 IE 版本中强制使用标准模式。 (下图HTML)
尽管如此,在 IE9 中它会根据用户计算机的百分比进入兼容模式。我使用 Mac,它在 Win7 IE9 虚拟机和我的 Windows 机器的 IE9 上运行良好。但是当我在同事的笔记本电脑上测试时,它会直接进入兼容性视图。
我尝试了以下元标记,但没有成功:
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
我已尝试使用 this answer 重置 Internet Explorer 设置来解决同一个问题,但仍然无效。
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7">
<title>Site</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
...
应使用 Microsoft specifies that a comma 来分隔每个模式,而不是示例代码段中的分号,如下所示:
<meta http-equiv="X-UA-Compatible" content="IE=9,8,7">
但我怀疑如果您已经单独尝试过 content="IE=edge"
,那可能不是重点。第二种解决方案是完全避免使用元标记,而是将 X-UA-Compatible 作为 HTTP header 发送。
如果这不起作用,我会查看您同事笔记本电脑中的网络设置(不仅仅是 IE 的设置),看看他的网络是否被视为内部网,尽管它不是内部网。
因此,根据标题,我使用 X-UA-Compatible
元标记在当前 IE 版本中强制使用标准模式。 (下图HTML)
尽管如此,在 IE9 中它会根据用户计算机的百分比进入兼容模式。我使用 Mac,它在 Win7 IE9 虚拟机和我的 Windows 机器的 IE9 上运行良好。但是当我在同事的笔记本电脑上测试时,它会直接进入兼容性视图。
我尝试了以下元标记,但没有成功:
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
我已尝试使用 this answer 重置 Internet Explorer 设置来解决同一个问题,但仍然无效。
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7">
<title>Site</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
...
应使用 Microsoft specifies that a comma 来分隔每个模式,而不是示例代码段中的分号,如下所示:
<meta http-equiv="X-UA-Compatible" content="IE=9,8,7">
但我怀疑如果您已经单独尝试过 content="IE=edge"
,那可能不是重点。第二种解决方案是完全避免使用元标记,而是将 X-UA-Compatible 作为 HTTP header 发送。
如果这不起作用,我会查看您同事笔记本电脑中的网络设置(不仅仅是 IE 的设置),看看他的网络是否被视为内部网,尽管它不是内部网。