ボディ幅の 80% である 1 つのコンテナー内に 2 つの隣接する流動幅の div (各幅: 50%) を含むレイアウトに取り組んでいます。
左と右の 50% div の間に 10px のマージンが必要ですが、アセンブリ全体が 80% のボディ幅のコンテナー内に収まるようにする必要があります。左 DIV と右 DIV の % 幅を減らすと 10 ピクセルの中央余白を確保できることは理解していますが、左 DIV/右 DIV/10 ピクセル 余白のアセンブリ全体が多くの場合、本体の 80% にならないことも意味します。幅。
左右の DIV の幅を再計算して、ブラウザー ウィンドウのサイズが変更されても、その間に 10 ピクセルの固定マージンがある場合にボディ幅の 80% を累積的に占有する方法はありますか? これがCSSで実行可能かどうかはわかりません。Javascript がそれを達成する唯一の方法である場合は問題ありませんが、私が見逃している隠された CSS トリックがあれば素晴らしいでしょう。
これが私のCSSです:
#logoplace {
width: 200px;
height: 200px;
background-color: red;
margin-left: auto;
margin-right: auto;
}
#navcontainer {
height: 30px;
width: 80%;
background-color: white;
margin: 5px auto;
opacity: 0.7;
}
#navcontainer:hover {
opacity: 1;
}
#rowone {
width: 80%;
height: 120px;
background-color: white;
margin: 5px auto;
}
#rowoneone {
width: 50%;
height: 120px;
background-color: green;
margin-right: 5px;
float: left;
}
#rowonetwo {
width: 50%;
height: 120px;
background-color: blue;
margin-left: 5px;
float: right;
}
html, body
{
height: 100%;
padding-left: 20px;
padding-right: 20px;
padding-top: 20px;
padding-bottom: 20px;
}
そして私のHTML:
<div id="logoplace">
</div>
<div id="navcontainer">
</div>
<div id="rowone">
<div id="rowoneone">
</div>
<div id="rowonetwo">
</div>
</div>
最後に、取得した結果を示すJsFiddleを示します。両方の浮動 DIV を 50% に設定し、固定マージンを追加したため、右側の浮動 DIV が押し下げられています。
どんな助けでも大歓迎です!