ホームページ > ウェブフロントエンド > CSSチュートリアル > 「margin: 0」であっても、インライン ブロック リスト項目に不要なマージンが含まれるのはなぜですか?

「margin: 0」であっても、インライン ブロック リスト項目に不要なマージンが含まれるのはなぜですか?

DDD
リリース: 2024-11-30 17:13:15
オリジナル
476 人が閲覧しました

Why Do My Inline-Block List Items Have Unwanted Margins Even With `margin: 0`?

インラインブロックリスト項目の不要なマージン

問題

表示するように設定されているリスト項目が inline- になるという問題が発生しています。マージンの CSS ルールが次のように設定されているにもかかわらず、ブロックの周囲に不要なマージンが存在します。 0.

HTML:

<ul>
  <li><div>first</div></li>
  <li><div>first</div></li>
  <li><div>first</div></li>
  <li><div>first</div></li>
</ul>
ログイン後にコピー

CSS:

ul {
  padding: 0;
  border: solid 1px #000;
}
li {
  display: inline-block;
  padding: 10px;
  width: 114px;
  border: solid 1px #f00;
  margin: 0;
}
li div {
  background-color: #000;
  width: 114px;
  height: 114px;
  color: #fff;
  font-size: 18px;
}
ログイン後にコピー

解決策

この問題は、display: inline-block プロパティによって発生します。ここに 2 つの解決策があります:

  1. display: inline-block を float に変更します。左:

    • CSS:

      li {
        float: left;
      }
      ログイン後にコピー
  2. リスト間の空白を削除items:

    • 間の改行を削除します。タグを付け、終了タグと開始タグを一緒にブロックします:

      • HTML:

        <ul>
          <li><div>first</div></li><li><div>first</div></li><li><div>first</div></li><li><div>first</div></li>
        </ul>
        ログイン後にコピー

注:

inline-block は 4 ピクセルのマージンをレンダリングします各要素の右側。これを回避するには、float を使用するか、リスト項目間の空白を避けることをお勧めします。

以上が「margin: 0」であっても、インライン ブロック リスト項目に不要なマージンが含まれるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート