ソースの順序でサイドバーが最初に発生しているようです。
2つのdiv(サイドバー、メイン)が異なる方向にフローティングしている場合は、それらが共有している幅を見てください。パディング、余白、枠線を含む幅の組合せが使用可能なスペースに収まるまで、1つのdivの幅を縮小します(あなたのフロートに幅を設定する必要があります)。 (私は簡潔さのために私の例では幅を使用します)。
私の経験では、ソースオーダーの後に発生するのは、あまりにも多くの幅でそのスポットに滑り込むのを防ぐものです。 #sidebar & #mainContentの
<div id="container">
<div id="header">head</div>
<div id="sidebar">side</div>
<div id="mainContent">main</div>
</div>
幅が広すぎる(#mainContentはダウンバンプます):#sidebar &の
#container{
**width:950px;**
margin:0 auto;
background:blue;
}
#mainContent{
float:right;
**width:651px;**
background:red;
}
#sidebar{
float:left;
**width:301px;**
background:green;
}
幅容器内部フィット#mainContent:
#container{
**width:950px;**
margin:0 auto;
background:blue;
}
#mainContent{
float:right;
**width:650px;**
background:red;
}
#sidebar{
float:left;
**width:300px;**
background:green;
}
を
btw ... 2つの要素をフローティングした場合同じ方向にあるが、それらの結合された幅が広すぎる場合、ソースオーダーの最後のものが上記の浮動要素の下に収まる。
"*あなたの(x)htmlとcssのデモコード –
コードなしでは推測できますが、ナビゲーションdivがフローティングされている場合は、それは広すぎる(パディング/マージンから)か、物事を押しつぶす要素があります。 – Pat