横一列に4つのdivがあります。divの間にスペースを入れたいのですが(マージンを使用していると思いますか?)、そうするとdivが親コンテナをオーバーフローします。
マージンが 0 の場合、これらは 1 行にきれいに並んでいます。
<div style="width:100%; height: 200px; background-color: grey;">
<div style="width: 25%; float:left; margin: 0px; background-color: red;">A</div>
<div style="width: 25%; float:left; margin: 0px; background-color: orange;">B</div>
<div style="width: 25%; float:left; margin: 0px; background-color: green;">C</div>
<div style="width: 25%; float:left; margin: 0px; background-color: blue;">D</div>
</div>
ここで 5px のマージンを導入すると、最後のボタンが折り返されます。
<div style="width:100%; height: 200px; background-color: grey;">
<div style="width: 25%; float:left; margin: 5px; background-color: red;">A</div>
<div style="width: 25%; float:left; margin: 5px; background-color: orange;">B</div>
<div style="width: 25%; float:left; margin: 5px; background-color: green;">C</div>
<div style="width: 25%; float:left; margin: 5px; background-color: blue;">D</div>
</div>
これは、幅属性がパーセンテージの場合、要素の合計幅のマージンを考慮していないためだと思いますか? これを行う正しい方法は何ですか?
ありがとう