clearfixを使わないでfloatを解除する方法
- 2008/03/28 - 12:05
- (X)HTML/CSS
- clearfix
(X)HTMLの構造を変更せずに、然るべき場所でfloatを解除するテクニックとして有名なclearfixを使用せずに、floatを解除する方法を紹介します。
clearfixの代わりとして包容要素に overflow: hidden; を指定するとfloatが解除され(た様に見え)ます。以下に具体的なサンプルを記します。
HTMLサンプル
<div id="wrap"> <div class="navi"> <p>ナビゲーションは左側</p> </div> <div class="main"> <p>メインは右側</p> </div> </div>
CSSサンプル
div#wrap {
overflow: hidden;
}
div#navi {
float: left;
}
div#main {
float: right;
}
問題点
この方法には問題が1点あって、ネスケではdiv#wrap自体が見えなくなってしまいます。ただ、ネスケのサポートも既に終了しているので、そこまで大きな問題では無いかと思いますが、状況次第ではclearfixを使用した方がいいかも知れません。
感想
紹介しといて何ですが、clearfixの方が意味的には正しい感じがしますね。
この方法を使う場面として考えられるのは、div#naviとdiv#mainの高さを合わせる時にdiv#wrapにoverflow:hidden;を指定している場合でしょうか(この方法を使うって言うよりはclearfixを使わなくて言い場面って感じですけど)。
一言で言うと「覚えといて損は無い程度の方法」。
まとめ
- 包容要素にoverflow:hidden;
- ネスケだと包容要素ごと非表示
- 高さを揃える時に1行くらい得
- 覚えといて損は無い程度
- Prev : オンライン版Photoshopがベータ公開されました
- Next : MT4.1以降のリファレンス(個人的)決定版
Trackback(0)
- Trackback URL
- Permanent link
Comment(0)
Post your commnet