HTML中DTD的用途是什么?

时间:2010-05-09 18:39:59

标签: html doctype

任何人都可以在HTML页面中指定文档类型声明的需求和用法。它的优点是什么?我在网上搜索,发现结果有点令人困惑。请有人强调。

1 个答案:

答案 0 :(得分:7)

为了澄清,根据Gumbo的问题,文档类型定义描述了文档类型的语法。这实际上适用于文档中的文档类型声明。以下描述后者。

它做了两件事:

  1. 它确保正确描述您的数据,因此文档解析器可以知道您在文档结构中使用的标记和实体的语义。

  2. 在现代浏览器中,它会触发渲染模式。大多数现代doctypes触发“标准模式”(意图遵循当前或提议的Web标准)或“几乎标准模式”(与“标准模式”相同,除了{{1}的默认display样式}}元素是<img>而不是block),而较旧的doctypes或没有doctype会触发“怪癖模式”(根据较旧的盒子模型渲染,其中维度的计算方式不同;在此框模型中,例如,元素的inline是显示元素的总宽度,其内容区域减少width)。

  3. 注意:

    1. 我认为任何版本的IE都不支持“几乎标准模式”,但可以使用CSS中的这一行轻松复制:padding

    2. 即使存在“标准模式”doctype,如果在doctype之前有空格,也可以触发“怪癖模式”,如果有XML序言,则可以在IE6中触发(例如img { display: block; }在它之前。