Web ページの右上部分 (ヘッダーとナビゲーションの下) に動的にサイズ変更されたサイドバーをフロートさせ、その周りにページ フローのメイン コンテンツを配置しようとしています (「L」字型を除く)。 「L」の下の部分が本当に厚い)。サイドバーの幅と高さはページごとに異なるため、厳密な値は使用できません。
私のcssは次のようになります:
#main {
width: 850px;
height: auto;
}
#sidebar {
width: auto;
float: right;
}
(さらに、パディング、マージン、および背景色コードは重要ではないと思います)
私のhtmlは次のようになります:
<div id="wrapper">
<div id="header"> /* header stuff */ </div>
<div id="nav"> /* nav stuff */ </div>
<div id="sidebar">
/* my sidebar content, really just an h3 and a ul */
</div>
<div id="main">
/* lots of content here */
</div>
</div>
最初にサイドバーの div を作成する必要がある理由が完全にはわかりませんが、このコードは FF、Chrome、Safari (Windows)、および IE8 で正常に動作します。しかし、IE7 (および私が気にしない IE6) では、サイドバーの div に "clear: left" があるかのように、メイン コンテンツがサイドバーの下部に押し下げられます (しかしありません)。 .
特にIE8は他のブラウザとまったく同じように動作するため、これはIE7の非準拠バグの1つであると感じています。しかし、私はそれを修正する方法がわかりません。
何か案は?ティア。