floatの解除「clearfix」
会社の制作ガイドラインではfloatを使ったときは「clear:both」で解除しましょ。
とあります。
でも、最近作られたサイトは「clearfix」をしばしば利用しているものが、ちらほら出現。
Dreamweaverのデザインビューでみると崩れまくってるので、
最初に見たときは「clearfix」を使ってるのに気がつかなくってビックリしました・・・。
というわけで。
今更ながら、「clearfix」のお勉強です。
clearfixでfloatを解除
↑のページを参考に・・・
右と左、両方フロートさせて、その下にフロートしてない要素がいます。
<body>
<div id="wrapper">
<div id="content">
<p>左にフロート</p>
</div>
<div id="menu">
<p>右にフロート</p>
</div>
</div>
<p>下の要素が隙間には入るの・・・</p>
</body>
#wrapper {
width: 300px;
border: solid 3px #999999;
}
#content {
float: left;
width: 124px;
height: 100px;
border: solid 3px;
color: #FF9999;
}
#menu {
border: solid 3px;
color: #99CC99;
float: right;
width: 124px;
}
親要素(#wrapper)にclass="clearfix"を追加してみましょ。
<div id="wrapper" class="clearfix">
.clearfix {
min-height: 1px;
}
* html .clearfix {
height: 1px;
/*\*//*/
height: auto;
overflow: hidden;
/**/
}
でも、このままだとDreamweaverのデザインビューでみると崩れて見えます。
DreamWeaverのデザインビューで、clearfixのレイアウト崩れを防ぐ方法
↑を参考に
overflow: hidden;を#wrapperに足してみる。
#wrapper {
width: 300px;
border: solid 3px #999999;
overflow: hidden;
}
Bossの講師日和を見ると
floatと親ボックスの高さ
「overflow: hiddenを使用するとNetscape7で内容が表示されない」
らしい。
・・・( ̄  ̄;) うーん
結局のところ、あんまり「clearfix」をあんまり使わないで作ってほしいぃなぁ・・・。