有人可以帮我理解html / xhtml页面的文档类型和内容类型之间的区别吗?
我知道浏览器使用文档类型来确定选择哪种模式(标准/怪癖),以及遵循要使用的文档类型模式?
答案 0 :(得分:5)
Content-Type
HTML元标记仅为后备的HTTP http-equiv="Content-Type"
标头表示文档的一般类型的文档。它是一个text/html
文档,浏览器应该启动它的HTML解析器吗?或者它是application/pdf
文档,浏览器是否需要加载其PDF插件?或者它是完全不同的东西?此标头/标记还应指定文档所在的编码(如果适用)。
HTML文档类型指定HTML文档的完全类型和版本。它是HTML 5文档吗? HTML 4严格?过渡?或者只是传统的标签汤?
答案 1 :(得分:2)
文档类型声明主要用于
HTML5 doctype声明仅用于在浏览器中触发标准模式,因为HTML5没有文档类型定义。
内容类型决定了页面是作为HTML标记还是XML序列化(XHTML)标记提供的。
那么我们在元标记中指定的内容类型是什么?
对于HTML,它是text/html
。这是大多数网页的默认设置
对于XHTML,它通常是application/xhtml+xml
。
还有一种字符编码,通常是charset=utf-8
。
但这通常无关紧要;在大多数情况下,内容类型将由服务器在Content-Type HTTP标头中发送。当浏览器选择标题时,它将忽略元标记。
在HTML5中,只指定了字符集:
<meta charset="UTF-8">
文件类型是否有任何关系/差异?
没有
此内容类型在页面呈现时有何重要意义?
相同的标记,假设它是格式良好的XML,在某些情况下,当它作为application/xhtml+xml
而不是text/html
提供时,可以生成不同的DOM。这些差异很小,但可能会对页面呈现产生不同的影响。
您可以编写将生成相同DOM的标记,无论是作为HTML还是XHTML。这称为polyglot markup。
指定内容类型是否有助于浏览器的性能?
没有
此外,所有内容类型都在哪里?
关于HTML / XHTML,我只提到了两个。所有其他内容类型(或MIME类型)都与此无关。
答案 2 :(得分:0)
HTML文档类型
声明不是HTML标记;它是Web浏览器关于页面编写的HTML版本的指令。
来源:w3schools
虽然
内容类型
content属性给出与http-equiv或name属性关联的值。
来源:w3schools
答案 3 :(得分:0)