背景:浮动元素会导致父元素高度坍塌,如果一个没有高度的块级元素的子元素浮动的话,则这个块级父元素的高度为0,即父元素高度坍塌
解决方法:
一、子级方法
在子元素的最后添加一个高度为0的子元素,并且让它清除浮动
eg:

示例代码
效果图为:

未设置高度的父元素(红)与150px高的子元素(黄)
二、父级方法
1.给父元素设置display:inline-block

display:inline-block
2.给父元素设置overflow:hidden

overflow:hidden
3.给父元素固定的高度
即计算各子元素高度后,手动给父元素固定高度,代码略
4.利用伪元素:after,并且清除浮动

利用伪元素:after