【问题标题】:XHTML...is it relevant anymore? [closed]XHTML...它是否相关了? [关闭]
【发布时间】:2017-10-16 21:20:12
【问题描述】:

看到这个问题:At the end of the day, why choose XHTML over HTML?

但是所有的答案都是从 2009 年开始的。从死去的 XHTML 2.0 到现在的 XHTML5,目前的共识是什么?现在有什么真正的理由使用(或不使用)XHTML 吗?

【问题讨论】:

    标签: html xhtml


    【解决方案1】:

    问题不是关于 HTML 与 XHTML,问题是关于 HTML 解析器与 XML 解析器。

    假设您提供了一个带有 XHTML 标头的页面,则媒体类型/mime 为 application/xhtml+xml。唯一不支持 XHTML 的值得注意的浏览器版本是 Internet Explorer 8,但是如果您在 2017 年或之后(2017 年 10 月发布)阅读此内容,即使 IE11 也几乎没有相关性。所以浏览器支持不再是一个考虑因素。 Internet Explorer 5 在技术上确实具有 XML 解析器,尽管它只能识别 application/xml 媒体类型/mime。

    一旦您通过了浏览器支持,您要问的正确问题是:HTML 解析器和 XML 解析器有什么区别?我遇到了一些开发人员,他们赚了六位数,但不知道 XML 解析器是什么。解析器通常获取代码并创建数据结构;在这两种情况下都是 DOM(文档对象模型)。如果两者都产生相同的 DOM,那么为什么会有差异?为什么这很重要?

    XML 解析器是严格的。如果你住在“XML 社区”,你必须每两周剪一次草,你必须在下午 6 点之前把垃圾桶放进去,即使在你的车库里也不能有不能开的汽车,而且附近的老奶奶经常在街上巡逻敢停下来闲逛几秒钟的朋克少年。

    HTML 解析器并不严格。如果你生活在“HTML 社区”中,你可以让你的草坪像亚马逊雨林一样,在路边连续几个月收集成堆的垃圾,无法使用的汽车一半停在草坪上,一半停在你的生活中房间里和一群醉醺醺的流浪汉成群结队地在附近游荡。

    当然,有很多网站是使用符合标准的 HTML 构建的,但绝大多数文本/html 网站的质量都处于中低水平。没有值的属性和未编码或编码不正确的实体是几个简单的例子。

    如果您的目标是尽可能做到最好,您将希望使用 XHTML5 进行编码。具体来说:您将使用通过 XML 解析器呈现的 HTML5。 Gecko (Firefox / Waterfox) 会破坏整个页面并给你一个错误信息。有些人真的不喜欢,但我喜欢它。如果您不知道该问题,则不会期望您会解决它。其他引擎(Presto / (real) Opera、Blink / Chrome、WebKit / Safari)将呈现直至解析错误。

    总会有反对者在心理上决定忽略客观性,并盲目地相信做他们知道的其他人正在做的事情本质上是优越的,因为自负比客观更重要。但是,如果您不拘泥于这些错误的观念,并且希望提高您的编程能力,更快地从错误中恢复并意识到大多数其他设计师/开发人员没有的概念,这些概念会给您带来大多数其他设计师/开发人员所没有的优势。尽可能严格地使用 XML 解析器和编码。计算机只能帮助您按照您决定生产的水平进行生产。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-22
      • 2020-01-16
      • 1970-01-01
      • 2013-03-15
      • 2023-03-26
      • 2010-12-24
      • 1970-01-01
      相关资源
      最近更新 更多