你的 CSS 是否曾经让你觉得很有趣,但看起来你已经完美地完成了所有事情?可能只是你的 HTML 声明把你搞砸了。有时,当您只是将一些示例放在一起时,您只需使用 <html> 标记来启动您的页面,并且一切正常。随着事情变得更加复杂,并且您忘记使用“真实”声明,您可能会注意到事情的行为与您的预期不同。例如,使用这个小技巧来居中某些东西是行不通的:

​.page_wrap {
margin: 0 auto;
}​

确保您使用的页面声明将支持此类魔法。下面的示例是最常见的,应该是您在每个页面上使用的首选 HTML 声明,除非您正在做一些特定且奇怪的事情并且您知道自己在做什么。

​<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">​

​<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">​

有关不同页面声明的非常好的解释,请查看这篇​​HTML Dog​​文章。

更新:读者大卫指出,上面的声明并不是 IE 不支持的声明的最佳选择。经过一些测试,以下声明在旧 IE 和现代浏览器中似乎都很健康:

​<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Strict//EN">​