回答:
overflow:auto;
含まれているdivでは、その内部(フロートされたアイテムも含む)がすべて表示され、外側のdivがそれらを完全にラップします。この例を見てください:
.wrap {
padding: 1em;
overflow: auto;
background: silver;
}
.float {
float: left;
width: 40%;
background: white;
margin: 0 1%;
}
<div class="wrap">
<div class="float">Cras mattis iudicium purus sit amet fermentum. At nos hinc posthac, sitientis piros Afros. Qui ipsorum lingua Celtae, nostra Galli appellantur. Petierunt uti sibi concilium totius Galliae in diem certam indicere. Ambitioni dedisse scripsisse iudicaretur.</div>
<div class="float">Mercedem aut nummos unde unde extricat, amaras. A communi observantia non est recedendum. Quisque ut dolor gravida, placerat libero vel, euismod. Paullum deliquit, ponderibus modulisque suis ratio utitur.</div>
</div>
overflow
追加された場所)の高さを強制していたため、私に起こりました。overflow: auto;
クラスとheight
セレクターを削除することで修正しました
フロートをクリアする方法は複数あります。ここでいくつか確認できます:http :
//work.arounds.org/issue/3/clearing-floats/
たとえば、clear:both
あなたのために働くかもしれません
#element:after {
content:"";
clear:both;
display:block;
}
#element { zoom:1; }
overflow: auto;
、要素の外にオーバーフローするコンテンツ(フォーカスの装飾など)をクリップすることですが、これはしません。
多くの場合、これoverflow: auto;
で十分ですが、補完とブラウザ間のサポートのために、すべてのブラウザで機能するClearfixを確認してください。
次のマークアップについて考えてみましょう。
<div class="clearfix">
<div class="content">Content 1</div>
<div class="content">Content 2</div>
</div>
以下のスタイルと一緒に..
.content { float:left; }
.clearfix { ..from link.. }
クリアフィックスがないと、フローティングチャイルドであるため、親にdiv
高さがありません。clearfixは、親に浮動子を考慮させます。
overflow: auto;