为什么例子中的<div class="clear"><div>能够把容器的高度撑起来?
<div class="clear"><div>在例子中没有设置高度,只是设置了clear:both,这样是不是只把自身受到浮动的影响给消除了?而没有设置高度的情况下,为什么容器撑开后的高度刚好和蓝色、红色和橙色的高度一样?
正在回答
你好同学 , 你可以这样理解 , 如果<div class="clear"></div>没有设置clear:both . 它上面的三个盒子也没有浮动的情况下 ,<div class="clear"></div>是应该在最后面的 ,
但是由于三个小盒子设置了浮动 . 所以<div class="clear"></div>受到浮动元素脱离文档流的影响 , 它的位置就移动上去了 , 如下:
当你设置了clear:both ,这个时候<div class="clear"></div>就能清除浮动元素对它的影响 . 移动到下面来了 , 如下:
这个时候container容器因为<div class="clear"></div>移动到下边 ,就能重新计算高度 , 所以高度就被撑起来了 . 如果还是不理解的话 ,可以给<div class="clear"></div>设置高度理解一下:
上面借助给div.clear清除浮动 ,让它回到最下面的位置 , 这样父元素由于div.clear位置的变化 ,高度也跟着撑开 . 这种方式我们通常就是叫做清除子元素浮动对父容器带来的影响 .
因为浮动的知识相对来说难理解一些 , 其实这里同学只要会运用这些方法即可 . 原理的知识以后慢慢练习的时候 , 运用的熟练了 . 可能理解起来就相对容易了 .加油 !
祝学习愉快 ,望采纳 .
我也很好奇,期待别人解答
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星