已采納回答 / m慕光
overflow:hidden;意思為當(dāng)內(nèi)容寬高大于父容器寬高,超出的部分就會(huì)被隱藏。本題中內(nèi)容寬度為:(386.66+20)* 3 = 1220父容器寬度為:1200 < 1220?所以這里如果不加overflow:hidden;則父容器無法在一行中容納所有的內(nèi)容,最后一個(gè)div元素會(huì)換行顯示;但是如果你加overflow:hidden;內(nèi)容超過父容器的部分可以被隱藏,即可做到一行顯示。這里不設(shè)置也沒關(guān)系是因?yàn)橛幸痪鋗argin-right:-20px;
2016-10-30
最贊回答 / P妞醬醬
<...圖片...>(1)最里層的div是普通元素,所以其margin的百分比是相對(duì)于其容器.box的寬度來計(jì)算的;(2)最里層的div是空元素,所以本身不占據(jù)空間;(3).box設(shè)置overflow:hidden;觸發(fā)BFC,它會(huì)重新計(jì)算.box整個(gè)盒子的大小(占據(jù)尺寸),使得被觸發(fā)BFC的元素不會(huì)影響到外面的元素,所以上下左右四個(gè)margin: 50%;不會(huì)出現(xiàn)在.box外面;(4)為什么2:1?因?yàn)榇怪狈较蛏蟤argin重疊,所以高度上只有一個(gè)margin:50%;
2016-10-26