昨天我与同事讨论过使用body元素作为包装器来避免使用div.page-margins或div.wrapper作为body元素的直接第一个子元素。
我喜欢将body用作页面包装器,并在其上应用各种样式,如宽度,边距,位置等。 通过快速搜索,我发现这两篇博文[1,2]确认了我。
我的同事不喜欢这个想法,因为曾经有一些问题(IE7 +页面缩放),他们习惯在体内使用div.wrapper。
所以我的问题是:是否有任何代码特定的参数反对使用body元素作为普通的容器元素?
附录:因为我们正在为我们的前端团队定义最佳实践,我们希望摆脱一些习惯 - 并且只使用div.wrapper,因为有人习惯了这是其中一个习惯: )
答案 0 :(得分:2)
除了其他人提供的背景颜色推理之外,我能想到的最好的另一种情况是,这些天需要使用包装器的是强制页脚“粘贴”到文档的末尾(当文档很短时视口的底部)。除了这些情况,我想不出包装器所需的原因。我知道我已经使用了一个包装器,只要我记得,所以你的同事很可能像我一样 - 这是一个老习惯,因为必须使用包装器以避免在老化的浏览器中呈现错误。
我想说有一个包装器仍然是最好的做法。这样,如果规范要求稍后改变以要求全窗口背景颜色或固定页脚,则不必在以后添加包装器并处理大量移动样式。毕竟,你只谈论了21个额外的字节...
<body><div id="body">...</div></body>
答案 1 :(得分:1)
我个人在我管理的所有网站上使用wrapper
,因为这样可以让我有背景颜色,例如灰色,你可以看到here
我可以用body做这个,但是你必须用html标签而不是body标签设置背景颜色。
这里没有正确或错误的答案,这只是个人偏好,但我发现wrapper
更容易,因为如果你向别人寻求帮助,他们可以更快地理解你的代码。
总之,
如果你不使用背景颜色那么应该有absolutley没有反对使用body
的编码论据。
如果你使用背景颜色,那么就会有一个小的论据反对它,但它实际上只是个人的优先权。
希望这有帮助。