clearfixは、
フローティングボックスが後続のボックスのレイアウトに影響を与えないようにするためのテクニック。
<header>header</header>
<div class="wrap">
<article class="main">main</article>
<aside class="side">side</aside>
</div>
<footer>footer</footer>
このHTMLに対して、
CSSで、mainにfloat:left;、sideにfloat:right;、wrapにwidthを設定するなどすると、footerが入り込む。
そこで、下記のように記述する。
.wrap:after {
display: block;
clear: both;
content: "";
}
こうすると、footerが入り込まない。
:afterで.wrapの後ろにcontent: "";とdisplay: block;による空のブロック要素が追加され、
clear:both;によって回り込みが解除されて、footerがフローティングボックス(mainとside)の下にくる。
clearfixの代わりにoverflowを使う方法もありますが、割愛します。
以上。