看了別人的問題,還是不明白加了overflow:hidden的效果
.left dl dd{
display:block;
overflow:hidden;}
不加的話,第二行的dd內(nèi)容會(huì)排列到dt底下
dt | dd dd dd dd
dd ?dd dd dd ?但是加了hidden就會(huì)變成這樣
dt | dd dd dd dd
? ? ? dd dd dd dd
所謂的清楚浮動(dòng)就是把父元素的float清除掉,所以第二行的dd才會(huì)排列的那里嗎?
但是dt也沒有固定的高度。。為啥會(huì)這樣
2016-09-27
來的比較晚。希望對(duì)慕友有幫助。
我暫且將你的一群dd放到div里吧。
其實(shí)這里的overflow:hidden作用的確是清除浮動(dòng)。說的再清楚一點(diǎn)就是:div計(jì)算高度時(shí),將計(jì)算浮動(dòng)元素的高——一群dd的高。
計(jì)算完畢后div作為一個(gè)塊級(jí)元素已經(jīng)有高有寬了,寬是直接等于父元素的內(nèi)容寬度,高則是內(nèi)容在里面排列超過寬度換行。
dt是浮動(dòng)元素,div里的a也是浮動(dòng)的,div就被傳送到了dt身邊。最重要的一點(diǎn),div在構(gòu)建完畢后寬度是一定的,這導(dǎo)致了它的形狀就只能是向下伸展的矩形。這就導(dǎo)致了,你的第二行dd排列到了那里,總不可能塊狀盒子是多邊形吧。
應(yīng)該就是醬,自己的理解,有誤還望指正。
2016-04-16
溢出隱藏,主要就是防止dd里面的內(nèi)容溢出二造成顯示的錯(cuò)亂