css关于浮动的高度塌陷

1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>BFC</title>
 6     <style type="text/css">
 7         .div1 {background-color: #FCE38A;  200px; height: 100px;}
 8         .div2 {background-color: #EAFFD0;  200px; height: 100px;}
 9         .div3 {background-color: #95E1D3;  200px; height: 100px;}
10     </style>
11 </head>
12 
13 <body>
14     <div class="div1">div1</div>
15     <div class="div2">div2</div>
16     <div class="div3">div3</div>
17 </body>
18 </html>

清除内部浮动

当一个标准流中的盒子中所有的子元素都进行了浮动,并且没有给盒子设置高度时,那么这个盒子的整个高度就会塌陷,什么意思呢,看下面的例子。

1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>BFC清除内部浮动</title>
 6     <style type="text/css">
 7         .child {background-color: #95E1D3; border: 1px solid #FCE38A;  100px; height: 100px;}
 8         .parent { 300px; border: 1px solid #95E1D3;}
 9     </style>
10 </head>
11 <body>
12     <div class="parent">
13         <div class="child"></div>
14         <div class="child"></div>
15     </div>
16 </body>
17 </html>

父集的被两个子div撑起来了,现在给child添加浮动

这个时候,父容器变成了2条重合的线了,也就是高度变为0了,即所说的高度塌陷。这是因为parent在计算高度时,parent内部的浮动元素child也会参与计算。

我们将父集浮动起来,

可以看出浮动父集元素解决了高度塌陷的问题。

原文地址:https://www.cnblogs.com/zh23/p/7128369.html