任何人都可以在HTML页面中指定文档类型声明的需求和用法。它的优点是什么?我在网上搜索,发现结果有点令人困惑。请有人强调。
答案 0 :(得分:7)
为了澄清,根据Gumbo的问题,文档类型定义描述了文档类型的语法。这实际上适用于文档中的文档类型声明。以下描述后者。
它做了两件事:
它确保正确描述您的数据,因此文档解析器可以知道您在文档结构中使用的标记和实体的语义。
在现代浏览器中,它会触发渲染模式。大多数现代doctypes触发“标准模式”(意图遵循当前或提议的Web标准)或“几乎标准模式”(与“标准模式”相同,除了{{1}的默认display
样式}}元素是<img>
而不是block
),而较旧的doctypes或没有doctype会触发“怪癖模式”(根据较旧的盒子模型渲染,其中维度的计算方式不同;在此框模型中,例如,元素的inline
是显示元素的总宽度,其内容区域减少width
)。
注意:
我认为任何版本的IE都不支持“几乎标准模式”,但可以使用CSS中的这一行轻松复制:padding
即使存在“标准模式”doctype,如果在doctype之前有空格,也可以触发“怪癖模式”,如果有XML序言,则可以在IE6中触发(例如img { display: block; }
在它之前。