Web デザインでは、Web サイトに表示されるデータの構造とコンテンツをユーザーが明確に理解できるように、整理された方法でデータを表示することが非常に重要です。順序付きリストを使用すると、データを整理して表示するための簡単な方法になります。 順序付きリスト番号のスタイルをより詳細に制御する必要がある場合は、 このチュートリアルでは、 順序付きリストの問題次のような順序付きリストを記述すると、ブラウザはリスト項目の前に自動的に番号を追加します。 <オル> <li>私の最初のアイテム</li> <li>私の2番目のアイテム</li> <li>私の3番目のアイテム</li> </ol> 見た目は問題ありませんが、数字にスタイルを設定することはできません。リストの前にある数字を丸で囲んでリストを変更する必要がある場合、どうしますか? 1 つの方法は、リストを完全に削除し、自分で手動で番号を追加することです。 <div> <span>1</span> 私の最初のアイテム </div> <div> <span>2</span> 私の2番目のアイテム </div> <div> <span>3</span> 私の3番目のアイテム </div> div { 下マージン:10px; } div スパン { ディスプレイ:インラインフレックス; アイテムを中央揃えにします。 コンテンツを中央揃えにする。 幅:25px; 高さ:25px; 境界線の半径:50%; 背景色:#000; 色:#fff; } これはまさに私たちが達成したいことですが、いくつかの欠点もあります。まず、手動で数字を追加するのは面倒です。数字を変更する必要がある場合は、1つずつ変更する必要があります。この場合、 ほとんどの場合、CSS カウンターを使用する方が適切です。理由を見てみましょう。 CSS カウンターの紹介
まず、 div.list { カウンターリセット: リスト番号; } 次に、 div.list div { カウンター増分: リスト番号; } これで、 最後に、 div.list div:before { 内容: counter(リスト番号); } 完全なコードは次のとおりです。 <div class="list"> <div>私の最初のアイテム</div> <div>2 番目のアイテム</div> <div>私の3番目のアイテム</div> </div> div.list { カウンターリセット: リスト番号; } /** :before 要素ではカウンタ増分を使用できます **/ div.list div:before { カウンター増分: リスト番号; 内容: counter(リスト番号); } 今はまだそこまでには至っていません。 div.list div:before { カウンター増分: リスト番号; 内容: counter(リスト番号); 右マージン: 10px; 下マージン:10px; 幅:35px; 高さ:35px; ディスプレイ:インラインフレックス; アイテムを中央揃えにします。 コンテンツの中央揃え: 中央; フォントサイズ:16px; 背景色:#d7385e; 境界線の半径:50%; 色:#fff; } 開始番号を変更するデフォルトでは、 div.list { カウンターリセット: リスト番号 1; } div.list { カウンターリセット: リスト番号 -1; } 増分値を変更するデフォルトでは、 この例では、 div.list { カウンターリセット: リスト番号; } div.list div:before { カウンター増分: リスト番号 2; // その他のスタイル } カウンター形式
デフォルト値は数値です。 たとえば、私のように科学的な知識を持っている場合は、数値に div.list div:before { カウンター増分: リスト番号; 内容: counter(リスト番号、小文字ギリシャ語); // ... その他のスタイル } ネストされたカウンターネストされた順序リストを使用する場合、数値は常に次の形式で表示されます。 サブリスト項目に数値 (たとえば、1.1) が必要な場合は、 <オル> <li> 私の最初のアイテム <オル> <li>ネストされた最初のアイテム</li> <li>ネストされた 2 番目のアイテム</li> </ol> </li> <li>私の2番目のアイテム</li> </ol> オル { リストスタイルタイプ:なし; カウンターリセット:リスト; } ol li:前{ カウンター増分:リスト; コンテンツ: counters(リスト、 ".") ". "; } タイトル付きのネストされたカウンター
体 { カウンターリセット:h1; } h1 { カウンターリセット:h2; } h1:前{ カウンター増分: h1; コンテンツ: counter(h1) ". "; } h2:前{ カウンター増分:h2; コンテンツ: counter(h1) "." counter(h2) ". "; } ブラウザのサポート ありがたいことに、 シンプルな挑戦 CSS カウンターを使った簡単なチャレンジに挑戦する準備はできていますか? 困惑している場合は、次の手順に従ってください。 (var i = 0; i < 1000; i++) の場合 { document.body.appendChild( document.createElement("div") ); } CSS カウンター: 体 { カウンターリセット:数値; } div:前{ カウンター増分:数値; 内容: counter(number) " => " counter(number, lower-roman); } 結論は CSS カウンターは CSS ではあまり知られていない機能ですが、それがどれほど頻繁に役立つかは驚くことでしょう。このチュートリアルでは、CSS カウンターをいつどのように使用するかについて説明し、いくつかの例を示しました。 以下は使用するプロパティのリストです。 |
財産 | 使用法 |
---|---|
カウンターリセット | 指定された値カウンターをリセット(または作成)します(デフォルトは 0) |
カウンター増加 | 指定されたカウンタを指定されたオフセット分増加します(デフォルトは1) |
カウンター(カウンター名, カウンター形式) | 指定された形式でカウンターの値を取得します |
カウンター(カウンター名、カウンター文字列、カウンター形式) | 指定された形式でネストされたカウンターの値を取得します |
CSS カウンターはクールです。ただし、理解しておくべきことの 1 つは、すべてのカウンターがグローバルであるということです。多数の CSS ファイルを含む大規模なプロジェクトで作業している場合、CSS ファイルが作成、リセット、増分される場所が見つからないことがあります。過度に使用せず、競合を避けるためにカウンターには説明的な名前を使用するようにしてください。
いくつかの実例
<!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <title>CSS カウンター</title> <スタイル> html{ ボックスのサイズ: 境界線ボックス; フォントサイズ: 62.5%; } *、 *::前に、 *:後 { ボックスサイズ: 継承; } 体 { フォントファミリー: Rambla、サンセリフ; フォントサイズ: 2rem; 行の高さ: 1.5; 色: #03c03c; } h1 { テキスト配置: 中央; } .ラッパー{ マージン: 0 自動; 幅: 85%; ディスプレイ: -webkit-box; ディスプレイ: -webkit-flex; ディスプレイ: -ms-flexbox; ディスプレイ: フレックス; コンテンツの位置を揃える -ms-flex-pack: 配布します。 コンテンツの両端揃え: スペースを空ける; } @media (最大幅: 1100px) { .ラッパー{ -webkit-box-orient: 垂直; -webkit-box-direction: 通常; -webkit-flex-direction: 列; -ms-flex-direction: 列; flex-direction: 列; -webkit-box-align: 中央; -webkit-align-items: 中央; -ms-flex-align: 中央; アイテムの位置を中央揃えにします。 } } オル { カウンターリセット: li; マージン: 20px 0; 左パディング: 0; } ol>li { 位置: 相対的; マージン: 0 0 25px 2em; パディング: 4px 8px 4px 20px; リストスタイル: なし; } ol>li::before { コンテンツ: カウンター(li); カウンター増分: li; 位置: 絶対; 上: -2px; 左: -2em; 幅: 2em; 右マージン: 8px; パディング: 4px; フォントの太さ: 太字; テキスト配置: 中央; } li ol、 li ul { 上マージン: 6px; } ol ol li:最後の子 { 下マージン: 0; } .disc>li::before { 色: 白; 背景色: #03c03c; 境界線の半径: 50%; } .circle>li::before { 色: #03c03c; 境界線: 実線 2px #03c03c; 境界線の半径: 50%; } .angle>li::before { 色: #03c03c; 右境界線: 実線 3px #03c03c; 下部境界線: 実線 3px #03c03c; } .shadow>li::before { 色: 白; 背景: #03c03c; ボックスの影: 5px 5px 0 0 緑黄色; } .rombo>li { 下部マージン: 25px; } .rombo>li::before { 色: 白; zインデックス: 2; } .rombo>li::after { 位置: 絶対; 上: -2px; 左: -2em; 幅: 2em; 右マージン: 8px; パディング: 4px; 背景色: #03c03c; 高さ: 2em; -webkit-transform: 回転(45度)。 -ms-transform:回転(45度); 変換: 回転(45度); コンテンツ: ''; zインデックス: 1; } .underline>li::before { 下部境界線: 実線 3px #03c03c; } </スタイル> </head> <本文> <h1>順序付きリスト番号のスタイル設定</h1> <div class="wrapper"> <ol class="disc"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> <ol class="circle"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> <ol class="角度"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> <ol class="shadow"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> <ol class="rombo"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> <ol class="underline"> <li>トマト</li> キュウリ <li>タマネギ</li> <li>コショウ</li> </ol> </div> その他の例 </本文> </html>
さらに優れた事例
https://css-tricks.com/custom-list-number-styling/
CSS カウンターを使用して番号付きリストを美しくする方法についての記事はこれで終わりです。番号付きリストの CSS カウンターの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。
CSS カウンターを使用して番号付きリストを美しくする方法についての記事はこれで終わりです。番号付きリストの CSS カウンターの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。
<<: Linux の一般的なコマンドとショートカット キーの紹介
問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...
目次これ方法オブジェクト内これを隠した厳密モード要約するJavaScript の this も不思議...
目次1. MySQL で現在の時刻を表現するにはどうすればよいでしょうか? 2. TIMESTAMP...
シナリオ:クロールされたデータは、別のメインテーブルと同じ構造を持つデータテーブルを生成するため、マ...
最近、テスト サーバーのオペレーティング システムを Cent0S 7.5 にアップグレードし、Py...
以下のように表示されます。名前説明する文字可変(n)、varchar(n)長さ制限あり、可変長文字(...
現象: divを一定の振幅で円、楕円などに変更する方法: CSSのborder-radiusプロパテ...
遅いログクエリ機能スロー ログ クエリの主な機能は、設定された時間しきい値を超える SQL ステート...
目次1. v-for: 配列の内容を走査する(よく使われる) 2. v-for: オブジェクトのプロ...
エクスポートデフォルト({ URL、 メソッド = 'GET'、 データ = nu...
この記事では、参考までにWinにmysqlをインストールする詳細な手順を紹介します。具体的な内容は次...
HTML5 では、入力用のネイティブ プレースホルダー属性が追加されており、これは高度なブラウザでサ...
序文最近、小さなデモを作成しました。大規模な工場のオンライン データを使用したため、インターフェイス...
以下は私がまとめた基本的なSQL知識です。主に参考資料として、また将来の他の初心者の助けとして、私自...
この記事はMySQL 5.7.23 winx64のインストールチュートリアルを記録します。具体的な内...