【问题标题】:What are pros to use XHTML 1.0 strict with content="text/html; over HTML 4.01 strict?使用带有 content="text/html; 的 XHTML 1.0 strict 而非 HTML 4.01 strict 的优点是什么?
【发布时间】:2011-01-08 16:59:27
【问题描述】:

我相信这里的每个人都知道,在不破坏 IE 兼容性的情况下,我们无法为 XHTML 提供正确的 MIME 类型 (application/xhtml+xml) 的页面,并且任何使用 text/html 提供的内容都将被解析为 HTML任何浏览器。所以如果内容没有被解析为XML。

我使用 xhtml doctype 仅出于一个原因:与 html 相比,它可以帮助我以更严格的方式在我的标记中找到“错误”。即使我的文档是以 text/html 形式提供的

使用带有 content="text/html; 的 XHTML 1.0 Strict 是否比 HTML 4.01 strict 有任何其他好处?现在或将来。

  1. 如果我已经在编写格式良好的有效 HTML 4.01 严格和
  2. 不想使用任何额外的 XHTML 功能(SVG、Docbook、MathML、OFX、 等),
  3. 永远不会操纵我的 XHTML 到 XSL(T)
  4. 永远不要将服务器文档作为 应用程序/html+xml

【问题讨论】:

标签: html css xhtml


【解决方案1】:

没有。您没有得到 XHTML 的任何好处。就浏览器而言,它变得怪异的 HTML,而不是 XML。如果您想获得 XML 的好处,例如可扩展性和更严格的解析器(如果这是一个好处),您必须将您的页面提供为 application/xhtml+xml,而 IE 将不支持它。更不用说 XHTML 1.0 与 2.0 不兼容,而 HTML 将永远是未来的证明。

您可能想阅读this 等。简而言之,只有在知道需要时才使用 XHTML,否则就没用了。

XHTML 也不一定意味着浏览器会适应标准。不要担心标准与怪癖模式的东西,这是为了向后兼容而保留的东西。当浏览器遇到带有文档类型(任何文档类型、HTML 或 XHTML)的页面时,它会尝试根据标准呈现它。这并不意味着它会像 W3C 所说的那样渲染它,它只是意味着它会尝试(并且可能不会成功)。

【讨论】:

【解决方案2】:

XHTML 至少在某种程度上带有默认样式规则 (css)。还有一些严格的渲染规则。任何实现 XHTML 的浏览器在如何呈现事物方面都没有太多余地,因此在制作 XHTML 文档时,开发人员可能会发现他们的文档在大多数浏览器中呈现相同(尽管仍然存在一些小问题,尤其是 IE)。

在后来的几年里,这有了很大的改进,大多数 XHTML 文档的样式在“所有”浏览器中的呈现方式都相同。

您可能还听说过“标准模式”和“怪癖模式”。 Quirks 模式是指(主要是 IE)考虑到它在以前版本中所做的所有错误事情,并按照以前的方式呈现页面,因此它将按照预期的方式呈现 THEN。 标准模式是一种严格模式,它只使用标准化的规则。这会破坏一些旧页面,但会减轻许多开发人员的负担。

【讨论】:

  • 虽然 XHTML 在如何呈现方面没有太多的余地,但 IE 不会呈现它,所以这一点或多或少没有实际意义。
  • 您的意思是 HTML 文档的样式在“所有”浏览器中的呈现方式不同?
  • 他们当然没有。也许一个非常简单的,但在许多情况下,您必须针对不同的浏览器进行测试并调整 CSS 和其他东西。 IE 对此特别古怪。
  • 我的问题是 XHTML 1.0 严格与 HTML 4.01 严格,所以你的意思是 HTML 4.01 严格不以标准模式呈现页面,只有 XHTML 可以?
  • @Javier Badia - 但是这个网站使用 HTML 并且在所有浏览器中看起来都一样
【解决方案3】:

XHTML 包含 HTML 4.01 中的所有元素,并结合了 XML 的严格语法。

【讨论】:

  • “严格的 XML 语法”有什么实际好处?
  • 没有,真的。它迫使您编写格式良好的代码,但如果您关心这一点,您可以在 HTML 中完成。如果你有用户提交的内容,一个格式错误的标签会使你的整个页面崩溃。
  • 因为 XHTML 文档需要格式正确,所以可以使用标准 XML 解析器来解析它们——不像 HTML,它需要一个宽松的 HTML 特定的解析器
  • @Javier Badia- 格式正确的文档是否意味着 W3C 有效文档?
  • @Jitendra:不。请参阅我在回答中提供的链接,我认为差异在该站点的某处已说明。
猜你喜欢
  • 2011-01-24
  • 2017-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多