问题:
在给body设置了1000px的宽度并且设置了红色为背景颜色,红色覆盖了整个页面而不是只覆盖1000px的宽度
网上找到的说法是这样的

下面验证一下这个想法
首先创建好一个基本的html文件,设body的背景色为red

效果如下

接着,向body里面加个div,给背景设为白色,然后居中,并且不给div宽度,代码如下

效果如下


body的实际宽度是和子类div中的宽度一样的,那为什么body的背景是覆盖整个页面,继续上代码

效果如下

确实是这样!
因此可以得出结论:默认情况下,我们直接操作body的话,body会被浏览器当做根结点来对待,子类(子类没有设置宽的前提下)会等于父类设置的宽,在没有设置任何html的背景色(或其他)属性时,body的高是都是无效的
所以,还是在body之后添加一个div实在一些~~~
本文探讨了在CSS布局中,当body元素设置了特定宽度和背景颜色时,背景色覆盖范围的问题。通过实验验证了默认情况下,未指定宽度的子元素会继承父元素的宽度,导致背景色覆盖整个页面的现象。
1137

被折叠的 条评论
为什么被折叠?



