@BoltClockが言ったことすべてをエコーします。彼は多くの良い点を挙げています。
これに加えて、 aninline-block
はテキストとして扱われるため、周囲の空白もテキストとして扱われるため、block
要素の場合とは異なる方法で機能します。これは、レイアウトに使用しようとすると、頻繁に人々を捕まえinline-block
ます。これはおそらく を使用する上での最大の「落とし穴」ですinline-block
。
別のもう少し微妙な点が、特にあなたの場合、つまり設定時に適用されますwidth:100%
。この場合、使用しているボックス モデルに注意する必要があります。標準のボックス モデルでは、境界線、パディング、およびマージンが要素の幅の外側に配置されるためです。したがって、ボーダー、パディング、またはマージンを使用すると、要素は実際には 100% 幅よりも少し多くのスペースを占有します。
block
この点は要素と要素に等しく適用されますが、幅を埋めるためにデフォルトで展開され、ボックスモデルがそれを超えないようにするため、通常は設定する必要がないという違いがあるため、inline-block
で発生する可能性が高くなります。はしっこ。inline-block
block
width:100%
これを回避するには、 を使用してボックス モデルを切り替えてbox-sizing:border-box
、境界線などがボックス内に配置されるようにするwith:100%
ことができます。詳細については、MDN ボックスサイズのページを参照してください。