float 属性最初用于在成块的文本内浮动图像,但现在它已成为在网页上创建多列布局的最常用工具之一
一、Float 布局的基本规则
浮动布局的规则
- 左/右浮动的盒子,将向左/右移动,直到它的 margin 碰到包含块的 content box 边缘 或者 兄弟浮动盒子的 margin
 - 浮动盒子会脱离文档流
- 即父元素的高度计算不会包含浮动的子元素的高度
 - 所谓的高度坍塌
 
 
如果包含框太窄,无法容纳水平排列的三个浮动元素,那么其它浮动块向下移动,直到有足够的空间。 如果浮动元素的高度不同,那么当它们向下移动时可能被其它浮动元素“卡住”

二、解决高度坍塌
1. 尾部添加清除浮动的元素
在父元素末尾 添加 清除浮动的块级元素
<div class="container"><div class="float"></div><div style="clear: both;"></div></div>
2. 伪元素法
.clearfix::after {content: '';display: block;clear: both;}
<div class="container clearfix"><div class="float"></div></div>
3. 父元素创建 BFC
.container {overflow: hidden; /* 触发 BFC */}
<div class="container"><div class="float"></div></div>
