【问题标题】:Difference between HTML Document Type and Content type?HTML文档类型和内容类型之间的区别?
【发布时间】:2012-11-05 19:38:10
【问题描述】:

谁能帮我理解 html/xhtml 页面的文档类型和内容类型之间的区别?

我知道浏览器使用文档类型来确定选择哪种模式(标准/怪癖)并遵循要使用的文档类型架构?

  1. 那么我们在元标记中指定的内容类型是什么?
  2. 它与文档类型有任何关系/差异吗?
  3. 这种内容类型在页面呈现方面有何重要意义?
  4. 指定内容类型是否有助于提高浏览器的性能?
  5. 另外,所有内容类型都有哪些?

【问题讨论】:

  • 谷歌会给你更好的答案

标签: html xhtml w3c-validation


【解决方案1】:

HTTP Content-Type 标头,http-equiv="Content-Type" HTML 元标记仅是 后备,表示文档的一般类型。它是text/html 文档吗?浏览器是否应该启动它的 HTML 解析器?或者它是一个application/pdf 文档并且浏览器需要加载它的PDF 插件?还是完全不同的东西?如果适用,此标头/标签还应指定文档所在的编码

HTML 文档类型指定HTML 文档的确切 类型和版本。它是 HTML 5 文档吗? HTML 4 严格?过渡?还是只是传统的标签汤?

【讨论】:

    【解决方案2】:

    文档类型声明主要用于

    • 基于 DTD(文档类型定义)的验证
    • 触发不同的浏览器呈现模式

    HTML5 文档类型声明仅用于在浏览器中触发标准模式,因为 HTML5 没有文档类型定义。

    内容类型决定了页面是作为 HTML 标记还是 XML 序列化 (XHTML) 标记提供的。

    1. 那我们在元标签中指定的内容类型是什么?

      对于 HTML,它是 text/html。这是大多数网页的默认设置。
      对于 XHTML,它(通常)是application/xhtml+xml

      还有一个字符编码,通常是charset=utf-8

      不过,这通常无关紧要;在大多数情况下,内容类型将由服务器在 Content-Type HTTP 标头中发送。当浏览器拾取标题时,它将忽略元标记。

      在 HTML5 中只指定字符集:

      <meta charset="UTF-8">
      
    2. 它与文档类型有任何关系/差异吗?

      没有。

    3. 这种内容类型在页面呈现方面有何重要意义?

      相同的标记,假设它是格式良好的 XML,在某些情况下,当它被用作 application/xhtml+xml 而不是 text/html 时,它可以生成不同的 DOM。这些差异很小,但可能会对页面呈现产生不同的影响。

      您可以编写生成相同 DOM 的标记,无论是作为 HTML 还是 XHTML。这被称为polyglot markup

    4. 指定内容类型对浏览器的性能有帮助吗?

      没有。

    5. 另外,所有内容类型都有哪些?

      关于 HTML/XHTML,只有我提到的两个。所有其他内容类型(或 MIME 类型)在这里都无关紧要。

    【讨论】:

    • 关于第三点:比如说,如果我按照严格模式创建一个标记(没有任何丢失的标签或语法错误)并将内容类型用作 text/html,那会使 DOM 结构不同来自保存为内容类型的相同标记:application/xhtml+html?
    • @goose:如果您的标记不遵循我的链接中提供的多语言标记指南,可能会发生这种情况。
    • 如果你有一个自闭合的脚本或样式标签(例如
    【解决方案3】:

    HTML 文档类型

    声明不是 HTML 标签;它是对 Web 浏览器的指示,说明页面是用什么版本的 HTML 编写的。

    来源:w3schools

    虽然

    内容类型

    content 属性给出与 http-equiv 或 name 属性关联的值。

    来源:w3schools

    【讨论】:

      【解决方案4】:
      1. 内容类型是发送到客户端的 MIME 类型的内容(例如 text/html 用于 HTML 或 application/html+xml 用于 XHTML)。一般来说,对于浏览器,Content Type 就像文件扩展名一样,比方说,对于 Windows。
      2. 是的,确实如此。两者都可以确定相同的内容(例如 XHTML)。但文档类型更具体——它可以包含文档使用的格式版本,例如 HTML 4.01(内容类型不会告诉你)。
      3. 文档类型对页面呈现的影响更大。
      4. text/plain 用于 TXT 文件,text/html 用于 HTML,application/xhtml+xml 用于 XHTML,text/css em> 用于 CSS,等等...http://www.freeformatter.com/mime-types-list.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-14
        • 2012-11-12
        • 2015-11-07
        • 2012-12-09
        • 2014-09-06
        • 2012-03-28
        • 2021-01-12
        • 2013-11-17
        相关资源
        最近更新 更多