【问题标题】:Internet Explorer 11 downgrading document modeInternet Explorer 11 降级文档模式
【发布时间】:2016-01-09 22:45:33
【问题描述】:

打开开发者模式后,我访问了站点 A,发现文档模式设置为 Edge(默认)。当该站点上的链接指向站点 B 时,我看到 IE 自动将文档模式降级为 5(!),从而破坏了站点。此外,无法再将文档模式更改为 10 或 9(它在站点 A 上),而只有 5、6、7 和 edge 可用。

站点 B 在头部设置了这个标签:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

Internet Explorer 没有站点 B 的兼容模式设置。

我完全迷路了,是什么导致IE这样降级其文档模式?

【问题讨论】:

  • 开发者工具倾向于解释为什么选择了特定模式。
  • 是的,我在 IE11 上看到了。不幸的是,在有这个问题的 IE11 浏览器上(这是一个旧的 Intranet 版本),它确实没有给出解释......
  • Site B 的文档类型是什么?

标签: internet-explorer internet-explorer-11 x-ua-compatible


【解决方案1】:

我感觉这可能是&lt;!DOCTYPE&gt; 问题。 IE 11 文档模式被视为已弃用,Microsoft 正在使用 &lt;!DOCTYPE&gt; 呈现页面。

如果站点具有以下&lt;!DOCTYPE&gt; 声明,则它将以标准模式呈现:

HTML 4.0 及更高版本

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt;

带有或不带有系统标识符的 XHTML

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"&gt;

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd"&gt;

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;

未知

&lt;!DOCTYPE html&gt;

如果网站具有以下&lt;!DOCTYPE&gt; 声明,那么它将以“几乎标准”模式(IE7 中的标准模式)呈现:

XHTML 过渡或框架集

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"&gt;

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"&gt;

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhmlt1-transitional.dtd"&gt;

带有系统标识符的 HTML 4.0 或 HTML 4.01 过渡或框架集

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd"&gt;

如果网站具有以下 &lt;!DOCTYPE&gt; 声明,则它将以 Quirks 模式(也称为 IE 5)呈现:

HTML 4 及更低版本,或无 DOCTYPE

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"&gt;

&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;

(Source of above list.)

如果站点 B 没有 doctype 或最后一个列表中的一个,它将以等于 IE 5 的 Quirks 模式呈现。

【讨论】:

    猜你喜欢
    • 2013-12-01
    • 1970-01-01
    • 2013-12-19
    • 2014-01-04
    • 2013-10-27
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 2016-01-12
    相关资源
    最近更新 更多