代码之家  ›  专栏  ›  技术社区  ›  waiwai933

XHTML、HTML和XML之间的实际区别

  •  8
  • waiwai933  · 技术社区  · 16 年前

    • HTML5是HTML的最新版本(或者至少即将发布),包含XHTML尚未具备的功能
    • 从text/html转换为application/xhtml+xml很困难,因为它不是html

    所以我的问题是,除了使用标记之外,XHTML与HTML还有什么关系?在XML上使用XHTML的实际目的是什么,或者根本就没有?

    4 回复  |  直到 16 年前
        1
  •  4
  •   Community Mohan Dere    9 年前

    是的,HTML5将具有XHTML尚未具备的特性(甚至是元素/标记)。它还将重新引入

    如果你想知道HTML4/XHTML和HTML5之间的区别,请阅读HTML5上的维基百科条目: http://en.wikipedia.org/wiki/HTML_5#Differences_from_HTML_4.01.2FXHTML_1.x

    但是,不,XHTML在呈现方面不等于HTML。 http://hixie.ch/advocacy/xhtml

    XHTML比HTML更像XML。它基本上使用(大多数)HTML中的元素(“标记”),同时尊重XML更严格的语法和语义。

    它是 就呈现而言等于HTML4。如果您使用XHTML的mime类型(因为它是XML),那么如果您做错了,可能会导致严重的解析错误:

    A nasty XHTML parse error

    ... 但是,尽管使用XHTML会导致浏览器之间的行为比HTML4更加一致;因为HTML4没有那么严格,浏览器会非常努力地解释不明确的标记,浏览器的开发人员最终可以自由选择如何处理这些不明确的标记。这会导致不一致,但是由于XHTML是XML,浏览器应该拒绝呈现页面

    <br /> ;一个老浏览器不知道该怎么处理 / 可能会认为它是标记名的一部分,然后你就失去了换行符。

    "Refactoring HTML" by Elliotte Rusty Harold ... 这似乎是一个300多页的问题答案;)

        2
  •  1
  •   Quentin    6 年前

    HTML5是最新版本(或至少即将发布)

    草稿。不稳定。随时可能更改。不会被释放 很快

    作为MIME类型的XHTML text/html在呈现时等于html

    HTML compatible XHTML

    从text/html转换为application/xhtml+xml很困难,因为它不是html

    从HTML到XHTML的转换实际上非常简单。 Tidy 可以处理很多文档(包括所有有效的HTML文档)。

    XML与HTML不兼容

    更确切地说,HTML不是XML。

    与XML相比,使用XHTML的优势与在一堆金属和塑料上使用汽车大致相同。XML是构建标记语言的工具包。

    与HTML相比,使用XHTML的优势在于可以将不同的标记语言混合到一个文档中,因此(例如)可以有一个XHTML+SVG+MathML文档。这要求客户机支持所有涉及的语言(或不支持的语言要正常降级)。

    不幸的是,这对于大多数项目来说都是不切实际的,因为Internet Explorer

    [ doesn't support XHTML ]

        3
  •  0
  •   Ms2ger    16 年前

    不,HTML5没有XHTML没有的特性,因为它在同一个文档中定义了XHTML 5。

        4
  •  0
  •   Hassan Syed    16 年前

    HTML在设计上具有较弱(很少或没有)的结构约束,或者至少web浏览器不需要这些约束来生成某种形式的输出。每个浏览器都有自己的逻辑,试图拼凑出丢失的结构。

    XHTML强制执行更严格的结构约束。。。是XML的一个子集——它比HTML更严格。更严格的语义允许:

    1. 跨浏览器的更一致的算法——这意味着跨浏览器实现的更一致性。
    2. 每次呈现的时钟周期更少——这意味着低功耗设备可以更好地处理呈现网页

    据我所知,XHTML5扩展了HTML以使web更具交互性,而且它可能比HTML到XHTML更重要,因为从一开始就应该强制执行更严格的语义。XHTML5为协议增加了许多明显的变化。

    lynx 可以显示文档——毕竟lynx没有机会呈现CSS和像图像这样的样式元素。

    XHTML5处于另一个联盟中,可能完全排除了基本的浏览器——但它的固定标记词汇表为web浏览器、web开发人员和设计师提供了意义。web浏览器可能需要特定的标记来启用新的时髦功能——但是词汇本身比把web页面看作 临时的