清除浮动的行为是作用于** 浮动元素 的父元素或者是兄弟元素,而不是 浮动元素 **本身。
*** 三个方法: ***
--方法一:为父元素添加 overflow:hidden
--第一个方法很简单,缺点是不太直观,即为父元素应用 overflow:hidden,以强制它包围浮动元素。
--实际上, overflow:hidden 声明的真正用途是防止包含元素被超大内容撑大。应用overflow:hidden 之后,包含元素依然保持其设定的宽度,而超大的子内容则会被容器剪切掉。除此之外, overflow:hidden 还有另一个作用,即它能可靠地迫使父元素包含其浮动的子元素。
--方法二:同时浮动父元素
--第二种促使父元素包围其浮动子元素的方法,是也让父元素浮动起来。
--方法三:添加非浮动的清除元素
--第三种强制父元素包含其浮动子元素的方法,就是给父元素的最后添加一个非浮动的子元素,然后清除该子元素。由于包含元素一定会包围非浮动的子元素,而且清除会让这个子元素位于(清除一侧)浮动元素的下方,因此包含元素一定会包含这个子元素——以及前面的浮动元素。在包含元素最后添加子元素作为清除元素的方式有两种。