我有一個雙列布局,左邊的邊欄,右邊的內容。CSS子級清除父級浮點數
因此,我將側邊欄左側浮動,並在右側留出內容。一切都很好,並且...
直到,內容的子元素已經清除應用於它,它跳到側邊欄下面。
有沒有辦法讓子元素只浮動並清除它的父容器?
由於一張圖片勝過1000個字,這裏有一個的jsfiddle:
我有一個雙列布局,左邊的邊欄,右邊的內容。CSS子級清除父級浮點數
因此,我將側邊欄左側浮動,並在右側留出內容。一切都很好,並且...
直到,內容的子元素已經清除應用於它,它跳到側邊欄下面。
有沒有辦法讓子元素只浮動並清除它的父容器?
由於一張圖片勝過1000個字,這裏有一個的jsfiddle:
這就是我以後的效果 - 但它可能沒有使用絕對定位? – ahren
你應該避免使用清晰。您可以使用溢出:隱藏與主容器
<div class="content">
<div class="one">One</div>
<div class="two">Two</div>
</div>
.content { float: left; overflow: hidden; width: 900px; }
aside { float: left; width: 100px; }
而且,你不應該使用保證金左:100px的將內容從左邊欄推開。同時浮起。我發現列喜歡在主包裝中。這很容易。
左右浮動不允許第二列佔用剩餘寬度...即;變通。 – ahren
你也可以這樣做。
.left{float:left;}
.right {float:right;}
.clear{clear:both;}
<div>
<div class="left">SideBar</div>
<div class="right">
<div>
<div class="left">content 1</div>
<div class="left">content 2</div>
<div class="clear"></div>
</div>
</div>
<div class="clear"></div>
</div>
當任何DIV(S)採用浮動,把它們放在一個父DIV和同一個父DIV
這將不允許'.right'展開以佔據剩餘的寬度... – ahren
http://jsfiddle.net/qRYYm/2/ – Peter
@PeterSzymkowski內明確的 - 沒有你是不是要先在jsfiddle中按'更新'? – ahren
當然,對不起 – Peter