为什么我们需要HTML / JSP页面中的doctype?如果没有它,页面似乎可以正常工作。
答案 0 :(得分:8)
Zeldman wrote
根据HTML和XHTML标准,a DOCTYPE(“文档类型的缩写” 声明“)通知验证者 你正在使用哪个(X)HTML版本, 并且必须出现在最顶端 每个网页。 DOCTYPE是关键 合规网页的组成部分:您的 没有标记和CSS将无法验证 它们。强>
并查看24条文章“Transitional vs. Strict Markup”
即将发布的HTML 5,您只需要声明
<!DOCTYPE HTML>
答案 1 :(得分:8)
特别是Microsoft IE在某些文档类型或完全缺乏doctype方面存在严重问题。 At the bottom of this page您可以结合某些文档类型找到浏览器行为的简明概述。有三种标准行为:
width
和height
会错误地覆盖padding
和border
。这是一段HTML,演示了IE中的盒子模型错误。 Copy'n'paste'n'run它。当<!DOCTYPE html>
出现时,您会看到一个矩形。没有doctype线,你会看到一个真正的广场。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Remove DOCTYPE to trigger quirksmode</title>
<style>
#box {
background: yellow;
width: 100px;
padding: 20px;
border: 20px solid black;
margin: 20px;
}
</style>
</head>
<body>
<div id="box">box</div>
</body>
</html>
当您需要“pixelperfect”网页设计时,此IE错误的影响最明显。
答案 2 :(得分:1)
有关完整讨论,请参阅http://www.quirksmode.org/css/quirksmode.html;简而言之,doctype应该触发页面渲染和行为的怪癖/严格模式。
不幸的是,人们在不知道他们做什么的情况下开始投入文档,从而减少了他们的实用性。
答案 3 :(得分:0)
当然,所有html文档都需要DOCTYPE来声明html的版本并告诉浏览器如何翻译html 这样你就可以避免许多浏览器错误。
答案 4 :(得分:0)
在页面上设置DOCTYPE时,会强制浏览器进入标准合规模式,这会强制执行更严格的渲染规则。
如果您不使用它,IE可能会退回到怪癖模式,这可能会导致页面显示问题。
请参阅Remember to declare your doctype上的此链接。
答案 5 :(得分:0)
doctype它是浏览器关于标记语言版本的使用说明。 doctype启用html属性。