1.文档溢出
当div设置了宽高,div里的内容如果超出了宽高就会被隐藏
2.清除浮动
当div不设置高度的时候,内部的元素又设置了float的时候,这个时候内部的元素会脱离div的那一层,这个时候div因为元素脱离,高度就会变成0,这个时候div后面的元素就会顶上来。
解决:给父元素添加声明 overflow:hidden;
(高度塌陷解决方法二:在浮动元素下方添加空div,并给该元素添加声明:
clear:both;)
3.子级设置margin-top,父级一起移动
当div里面的元素设置了margin-top的时候,div会跟着一起下来,效果相当给div设置了margin-top,
解决:给div加上overflow:hidden,就可以清除这个影响。