OLタグの数字番号をCSSで丸く装飾表現するやり方を解説

OLタグの数字番号をCSSで丸く装飾表現するやり方を解説
OLタグの数字番号をCSSで丸く装飾表現するやり方を解説

この記事では、OLタグで表示される数字を丸で囲う方法を説明する。

HTMLで数字をつけたリスト表現したい場合、通常OLタグを使う。OLタグとは「Ordered List」の略で、順序のあるリストであるということ。反対に順序のないリストは「Unordered List」と呼ばれ、お馴染みのULタグである。

OLタグの番号を丸で表現するCSSのやり方

HTMLの用意

次のようなHTMLを用意しよう。これにスタイルシートを当てて数字を丸で表現していく。

<ol>
    <li>コメント</li>
    <li>コメント</li>
    <li>コメント</li>
    <li>コメント</li>
</ol>

OLタグのHTML
OLタグのHTML

丸パターン1

OLタグの数字を丸でデザイン
OLタグの数字を丸でデザイン

数字を丸で囲ったパターンがこちら。

ol {
  counter-reset:num;
  list-style-type: none!important;
  padding:0;
  margin:0;
}
ol li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
}

ol li:before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  display:inline-block;
  background:transparent;
  border:#555 1px solid;
  color: #555;
  font-family: 'Arial',sans-serif;
  font-weight:bold;
  font-size: 14px;
  border-radius: 50%;
  left: 0;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  top: 10px;
}

丸パターン2

OLタグの数字を丸でデザイン
OLタグの数字を丸でデザイン

図のように、背景を色で埋めた丸のパターンがこちら。

ol {
  counter-reset:num;
  list-style-type: none!important;
  padding:0;
  margin:0;
}
ol li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
}

ol li:before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  display:inline-block;
  background: #555;
  color: #FFF;
  font-family: 'Arial',sans-serif;
  font-weight:bold;
  font-size: 14px;
  border-radius: 50%;
  left: 0;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  top: 10px;
}

解説

OLタグの数字をデザインするポイントは、デフォルトの数字を非表示にし、counterで新たに数字を作ってデザインしているところ。次のように最小限の構成で表示を試すとわかりやすい。ちなみにこのcounterはCSS2から存在している。

ol {
  counter-reset:num; /* num変数を0で初期化 */
  list-style-type: none!important; /* デフォルトの数字を非表示 */
}
ol li:before {
  counter-increment: num; /* numに1を加算 */
  content: counter(num); /* numの値を表示 */
}

CSSのカウンターを使って数字を表示
CSSのカウンターを使って数字を表示

記事に関するご質問などがあれば、
@tosisico または お問い合わせ までご連絡ください。
オススメ!Webデザインの本

デザインの目的は相手に伝えること。美しく装飾することだけがデザインではないのです。そして、デザインはセンスよりも知識が必要です。

ここではWebデザインをつくる上で、実際に役に立ったと思う本をご紹介します。

▼ コードを見ながら手を動かし、作りながら学べる内容になってます。Webデザインの知識からHTMLやCSSの技術的なことまでを、体系的に順序立てて学ぶことができます。実際の制作現場の流れが体験できる本です。「レスポンシブデザイン」「Flexbox」「CSSグリッド」についても学べます。

▼ デザインの本といえばこちら。とても有名な古典的名著です。デザインを良くするための4つの基本原則を徹底解説しています。DTPをはじめ、Webデザインやプレゼン資料づくりにも役立ちます。

関連記事