clear
プロパティは、floatの振る舞いを制御する上で重要だ。以下、2つの例を比較してみよう:
<div class="box">...</div>
<section>...</section>
.box {
float: left;
width: 200px;
height: 100px;
margin: 1em;
}
私はfloatされている!
</div>本来であればsection
要素はdiv
の下にくる。だが、div
は左にfloatされているため、こんな風になる。具体的に言うと、section
中の文字列が、div
の周りで折り返すようになる。それから、section
が全体を囲む。次に、floatされている要素の下に、section
を配置したくなったらどうすればいいだろう?
.box {
float: left;
width: 200px;
height: 100px;
margin: 1em;
}
.after-box {
clear: left;
}
私はfloatされている!
</div>clear
を使うと、floatされているdiv
の下にsectionを配置できる。左側にfloatしている要素に対しては、clearプロパティの値としてleft
を使う。もちろん、right
やboth
にもclearを使える。