インラインブロック Div: 並列サイズの問題
背景:
HTML では、 inline-block 要素では、インライン フローとボックス モデルの両方のプロパティを使用できるため、要素を問題なく水平方向に表示できます。ブロック要素に関連付けられた改行。
問題:
ただし、インラインブロック要素を使用して 2 つの 50% 幅の div を並べて表示すると、要素が
理由:
インラインブロックを使用する場合要素の間には固有の空白があります。この空白の幅は約 4 ピクセルであり、2 つの div を合わせた幅が両方とも 50% に設定されている場合でも 100% を超えてオーバーフローする可能性があります。
解決策:
1. Flexbox または CSS グリッド:
最新のブラウザでは、正確な幅制御で DIV を並べて配置するために、Flexbox または CSS グリッド レイアウトを使用することをお勧めします。
2. 1 つの DIV の幅の縮小:
質問で述べたように、1 つの DIV の幅を 49% に縮小すると並列の問題は解決できますが、DIV 間に小さなギャップが生じます。
3.浮動要素:
両方の DIV を浮動させることも解決策の 1 つですが、適切なレイアウトを実現するにはクリア手法を調整する必要があります。
問題例:
<div>
上記の例では、幅 50% の 2 つの DIV の間に固有の空白があるため、オーバーフローします。
結論:
インラインブロック要素を使用する場合、要素間で発生する可能性のある空白の問題を認識し、フレックスボックスやフレックスボックスなどの代替アプローチを検討することが重要です。より正確かつ効率的な配置のためのグリッド レイアウト。
以上が幅 50% の 2 つのインラインブロック div が常に隣り合って収まらないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。