我经常看到这样的事情:
<body>
<div class="container">
</div>
</body>
为什么不这样做:
<body class="container">
</body>
最佳答案
您可以完全自由地执行以下任何操作:
- 向
class
元素添加id
或body
属性; - 直接将 CSS 应用于
body
元素,有或没有class
或id
属性;或 - 直接将 CSS 应用于
html
元素,尽管没有class
或id
属性并带有 some important caveats。
所有这些都是 CSS 和 HTML 的完全合法使用。
为什么是 <div id="container"/>
?多年来,许多 CSS 技术采用任意容器元素来简化概念,以避免某些跨浏览器的不一致,或者因为它们太复杂而无法通过其他方式实现。一些更微妙的原因包括,在旧版浏览器中,无法将 CSS 直接应用于 html
元素,并且这些元素(通常是 obvious reasons )存在(并且存在)某些不寻常或受限的属性。 (由于这个原因,他们是 sometimes described as being "magic"。)
所有这些共同创造了一种情况,即实现几乎任何中等复杂的布局,从一个非常干净的容器元素开始不可避免地要容易得多。尽管这种做法最初是作为达到目的的一种手段,但很快就成为了风景的一部分,现在许多开发人员都毫不犹豫地添加了额外的标记。
关于html - 改变 body 不是 HTML/CSS 标准吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5305056/