浮動孽惰,float
意思就是把元素從常規(guī)文檔流中拿出來艳汽。
浮動元素脫離了常規(guī)文檔流之后赠法,原來緊跟其后的元素就會在空間允許的情況下,向上提升到與浮動元素平起平坐淑倾。
如果浮動元素后面有兩個段落馏鹤,而你只想讓第一段與浮動元素并列(就算旁邊還能 放下第二段,也不想讓它上來)娇哆,怎么辦湃累?用 clear 屬性來“清除”第二段,然后它 就乖乖地呆在浮動元素下面了迂尝。
clear:left
clear:right
clear:both
浮動元素位于“文檔流外 部”脱茉,因而它已經(jīng)不被包含在標(biāo)記中的父元素之內(nèi)了。正因?yàn)槿绱寺⒖鼘Σ季挚赡墚a(chǎn) 生破壞性影響琴许。
方法一,為父元素添加overflow:hidden
這個方法很簡單溉躲,缺點(diǎn)是不太直觀榜田,即為父元素應(yīng)用overflow:hidden
,以強(qiáng)制它 包圍浮動元素锻梳。
實(shí)際上箭券,overflow:hidden
聲明的真正用途是防止包含元素被超大內(nèi)容撐大。應(yīng)用 overflow:hidden
之后疑枯,包含元素依然保持其設(shè)定的寬度辩块,而超大的子內(nèi)容則會被容 器剪切掉。除此之外荆永,overflow:hidden
還有另一個作用废亭,即它能可靠地迫使父元素 包含其浮動的子元素。
方法二具钥,同時(shí)浮動父元素
父元素包圍其浮動子元素豆村,同時(shí)讓父元素浮動起來。
方法三骂删,添加非浮動的清除元素
強(qiáng)制父元素包含其浮動子元素的方法掌动,就是給父元素的最后添加一個非浮動的子元素,然后清除該子元素宁玫。由于包含元素一定會包圍非浮動的子元素粗恢,而且清除會讓這個子元素位于(清除一側(cè))浮動元素的下方,因此包含元素一定會包含這個子元素——以及前面的浮動元素欧瘪。