ホームページ > ウェブフロントエンド > CSSチュートリアル > 入れ子になった順序付きリストが HTML および CSS で間違った番号付けで表示されるのはなぜですか?それを修正するにはどうすればよいですか?

入れ子になった順序付きリストが HTML および CSS で間違った番号付けで表示されるのはなぜですか?それを修正するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-16 12:49:03
オリジナル
809 人が閲覧しました

Why are my nested ordered lists displaying incorrect numbering in HTML and CSS, and how can I fix it?

番号付けが正しくないネストされた順序付きリスト

この問題は、HTML と CSS を使用してネストされた順序付きリストを作成するときに発生します。次のコードが使用されています:

ol {
    counter-reset: item;
    padding-left: 10px;
}
li {
    display: block
}
li:before {
    content: counters(item, ".") " ";
    counter-increment: item
}
ログイン後にコピー
<ol>
    <li>one</li>
    <li>two</li>
    <ol>
        <li>two.one</li>
        <li>two.two</li>
        <li>two.three</li>
    </ol>
    <li>three</li>
    <ol>
        <li>three.one</li>
        <li>three.two</li>
        <ol>
            <li>three.two.one</li>
            <li>three.two.two</li>
        </ol>
    </ol>
    <li>four</li>
</ol>
ログイン後にコピー

間違った出力:

期待される出力は次のようになります:

1. one
2. two
  2.1. two.one
  2.2. two.two
  2.3. two.three
3. three
  3.1 three.one
  3.2 three.two
    3.2.1 three.two.one
    3.2.2 three.two.two
4. four
ログイン後にコピー

ただし、実際の結果には間違った番号が表示されます:

1. one
2. two
  2.1. two.one
  2.2. two.two
  2.3. two.three
2.4 three
  2.1 three.one
  2.2 three.two
    2.2.1 three.two.one
    2.2.2 three.two.two
2.3 four
ログイン後にコピー

解決策:

この問題を解決するには、2 つの解決策が利用可能です:

  1. 無効にするJSFiddleの「CSSの正規化」。このオプションでは、すべてのリストのマージンとパディングがデフォルトで 0 に設定されます。
  2. メイン
  3. 内にサブリストを含めます。
ol {
  counter-reset: item
}
li {
  display: block
}
li:before {
  content: counters(item, ".") " ";
  counter-increment: item
}
ログイン後にコピー
<ol>
  <li>one</li>
  <li>two
    <ol>
      <li>two.one</li>
      <li>two.two</li>
      <li>two.three</li>
    </ol>
  </li>
  <li>three
    <ol>
      <li>three.one</li>
      <li>three.two
        <ol>
          <li>three.two.one</li>
          <li>three.two.two</li>
        </ol>
      </li>
    </ol>
  </li>
  <li>four</li>
</ol>
ログイン後にコピー

実装すると、順序付きリストには意図したとおりに正しい番号が表示されます。

以上が入れ子になった順序付きリストが HTML および CSS で間違った番号付けで表示されるのはなぜですか?それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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