diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html')
-rw-r--r-- | files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html b/files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html new file mode 100644 index 0000000000..6ea0826b47 --- /dev/null +++ b/files/zh-cn/web/html/quirks_mode_and_standards_mode/index.html @@ -0,0 +1,50 @@ +--- +title: 怪异模式和标准模式 +slug: Web/HTML/Quirks_Mode_and_Standards_Mode +tags: + - HTML + - XHTML + - 指南 +translation_of: Web/HTML/Quirks_Mode_and_Standards_Mode +--- +<p>在很久以前的网络上,页面通常有两种版本:为网景(Netscape)的 Navigator 准备的版本,以及为微软(Microsoft)的 Internet Explorer 准备的版本。当 W3C 创立网络标准后,为了不破坏当时既有的网站,浏览器不能直接弃用这些标准。因此,浏览器采用了两种模式,用以把能符合新规范的网站和老旧网站区分开。</p> + +<p>目前浏览器的排版引擎使用三种模式:怪异模式(Quirks mode)、接近标准模式(Almost standards mode)、以及标准模式(Standards mode)。在<strong>怪异模式</strong>下,排版会模拟 Navigator 4 与 Internet Explorer 5 的非标准行为。为了支持在网络标准被广泛采用前,就已经建好的网站,这么做是必要的。在<strong>标准模式</strong>下,行为即(但愿如此)由 HTML 与 CSS 的规范描述的行为。在<strong>接近标准模式</strong>下,只有少数的怪异行为被实现。</p> + +<h2 id="How_does_Mozilla_determine_which_mode_to_use.3F" name="How_does_Mozilla_determine_which_mode_to_use.3F"><strong>浏览器如何决定使用哪个模式?</strong></h2> + +<p>对 <a href="/en-US/docs/HTML" title="/en-US/docs/HTML">HTML</a> 文件来说,浏览器使用文件开头的 DOCTYPE 来决定用怪异模式处理或标准模式处理。为了确保你的页面使用标准模式,请确认你的页面如同本范例一样拥有 DOCTYPE:</p> + +<pre class="brush: html"><!DOCTYPE html> +<html> + <head> + <meta charset=UTF-8> + <title>Hello World!</title> + </head> + <body> + </body> +</html></pre> + +<p>范例中的DOCTYPE,<code><!DOCTYPE html></code>,是所有可用的 DOCTYPE 之中最简单的,也是 HTML5 所推荐的。HTML 的早期变种也属于推荐标准,不过,当今的浏览器都会对这个 DOCTYPE 使用标准模式,就算是早已过时的 Internet Explorer 6 也一样。目前,并没有正当的理由,去使用其他更复杂的 DOCTYPE。如果你使用其他的 DOCTYPE,你可能会面临触发接近标准模式或者怪异模式的风险。</p> + +<p>请确定你把 DOCTYPE 正确地置于 HTML 文件的顶端。如果有任何其他字符位于 DOCTYPE 之前,比如注释或 XML 声明,会导致 Internet Explorer 9 或更早期的浏览器触发怪异模式。</p> + +<p>在 HTML5 中,DOCTYPE 唯一的作用是启用标准模式。更早期的 HTML 标准中,DOCTYPE 会附加其他意义,但没有任何浏览器会将 DOCTYPE 用于怪异模式和标准模式之间互换以外的用途。</p> + +<p>另请参阅 <a class="external" href="http://hsivonen.iki.fi/doctype/" title="http://hsivonen.iki.fi/doctype/">when different browsers choose various modes</a> 的详细说明。</p> + +<h3 id="XHTML"><strong>XHTML</strong></h3> + +<p>如果你的网页使用 <a href="/en-US/docs/XHTML" title="XHTML">XHTML</a> 并在 <code>Content-Type</code> HTTP 标头使用<code>application/xhtml+xml</code> MIME 类型,你不需要使用 DOCTYPE 启动标准模式,因为这种文件会永远使用标准模式。不过请注意,页面使用 <code>application/xhtml+xml</code> 会令 Internet Explorer 8 出于未知格式之故<a href="/en-US/docs/XHTML#Support" title="XHTML">出现下载对话框</a>,因为首个支持 XHTML 的 Internet Explorer 版本是 Internet Explorer 9。</p> + +<p>如果你的类 XHTML 网页使用 <code>text/html</code> MIME 类型,浏览器会将其视为 HTML,这时就需要使用 DOCTYPE 启用标准模式。</p> + +<h2 id="What_are_the_differences_between_the_modes.3F" name="What_are_the_differences_between_the_modes.3F"><strong>我要如何知道目前是哪个模式?</strong></h2> + +<p>在 Firefox 中,请从右键菜单选择 <em>查看页面信息</em>,然后查看 <em>渲染模式</em>。</p> + +<p>在 Internet Explorer 中,请按下 <kbd>F12</kbd>,然后查看 <em>文档模式</em>。</p> + +<h2 id="What_are_the_differences_between_the_modes.3F" name="What_are_the_differences_between_the_modes.3F"><strong>这些模式有何不同?</strong></h2> + +<p>请参阅 <a href="/en-US/docs/Mozilla_Quirks_Mode_Behavior" title="Mozilla_Quirks_Mode_Behavior">list of quirks</a> 和 <a href="/en-US/docs/Gecko's_"Almost_Standards"_Mode" title="Gecko%27s_%22Almost_Standards%22_Mode">almost standards mode</a> 以了解这些模式之间的差别。</p> |