footer置底时页面溢出浏览器高度的原因:为什么html和body以及div#wrapper都是1034*1020,html却占据了整个视窗?

footer置底时页面溢出浏览器高度的原因:为什么html和body以及div#wrapper都是1034*1020,html却占据了整个视窗?

footer置底时页面溢出浏览器高度的原因

问题:

  • 设备信息和错误图片
  • 为什么html和body以及div#wrapper都是1034*1020,html却占据了整个视窗?

答案:

第一个原因:浏览器默认样式

浏览器的部分元素带有默认样式,导致页面高度超过窗口高度。清除这些默认样式即可。

* {
    margin: 0;
    padding: 0;
}

第二个原因:文档流

默认情况下,文档流中的元素会自动撑开父容器的高度。当将元素的margin-bottom设置为负值时,该元素会超出其布局边界,不再影响父容器的高度计算。

这种技术被称为“块级格式化上下文”(BFC)。当一个元素触发BFC时,它会创建一个独立的渲染环境,并遵循特定规则进行布局。

如果 footer 的 margin-bottom 设置为负数,它可能会重叠或覆盖页面上其他内容。因此,需要使用一个占位元素来代替footer占用的空间。

以上就是footer置底时页面溢出浏览器高度的原因:为什么html和body以及div#wrapper都是1034*1020,html却占据了整个视窗?的详细内容,更多请关注其它相关文章!