Badge(バッジ)
Badge は、「新着」「人気」のような短いラベルを小さな丸い札で見せる部品です。色の変え方、outline の形、大きさの調整をまとめています。
Badge(バッジ)は、「新着」「人気」のような短いラベルを、小さな丸い札で見せる部品です。@lism-css/ui に入っています。
どんなときに使う?#
- 記事やカードに、分類や状態(「受付中」「終了」など)を小さく付けるとき
- タグの一覧を並べるとき
使い方#
<span> に b--badge を付けます。枠線だけの形にするときは b--badge--outline を足します。
表示例
<div class="l--cluster -g:15">
<span class="b--badge">新着</span>
<span class="b--badge b--badge--outline">新着</span>
</div>
ふつうの形は、背景が文字の色(var(--text))、文字が背景の色(var(--base))で、色が反対になった札です。文字は小さめ(--fz--xs)で、角は丸(var(--bdrs--99))です。
色を変える#
背景の色は -bgc と変数 --bgc、outline の文字と枠の色は -c と変数 --c で変えます。
表示例
<div class="l--stack -g:15">
<div class="l--cluster -g:10">
<span class="b--badge -bgc" style="--bgc: var(--red)">赤</span>
<span class="b--badge -bgc" style="--bgc: var(--green)">緑</span>
<span class="b--badge -bgc" style="--bgc: var(--blue)">青</span>
<span class="b--badge -bgc" style="--bgc: var(--purple)">紫</span>
</div>
<div class="l--cluster -g:10">
<span class="b--badge b--badge--outline -c" style="--c: var(--red)">赤</span>
<span class="b--badge b--badge--outline -c" style="--c: var(--green)">緑</span>
<span class="b--badge b--badge--outline -c" style="--c: var(--blue)">青</span>
<span class="b--badge b--badge--outline -c" style="--c: var(--purple)">紫</span>
</div>
</div>
色の名前は red・orange・yellow・green・blue・purple・pink・gray などが使えます。色の一覧は 色のトークン にあります。
u--cbox と組み合わせる#
u--cbox を足して --keycolor で色を決めると、うすく色の付いた背景に、その色に近い文字の札になります。
表示例
<div class="l--cluster -g:10">
<span class="b--badge u--cbox" style="--keycolor: var(--red)">Red</span>
<span class="b--badge u--cbox" style="--keycolor: var(--orange)">Orange</span>
<span class="b--badge u--cbox" style="--keycolor: var(--blue)">Blue</span>
</div>
大きさと角を変える#
内側の余白が em(文字の大きさを1とする単位)で決まっているので、-fz で文字を大きくすると札全体も大きくなります。角の丸さは -bdrs で変えます。
表示例
<div class="l--stack -g:15">
<div class="l--cluster -g:10 -ai:center">
<span class="b--badge">ふつう</span>
<span class="b--badge -fz:s">-fz:s</span>
<span class="b--badge -fz:m">-fz:m</span>
</div>
<div class="l--cluster -g:10 -ai:center">
<span class="b--badge">ふつう</span>
<span class="b--badge -bdrs:10">-bdrs:10</span>
<span class="b--badge -bdrs:0">-bdrs:0</span>
</div>
</div>
アイコンを入れるときは、札に -ai:center を付けて、文字の前に <svg class="a--icon"> を置きます。
<span class="b--badge -ai:center">
<svg class="a--icon" aria-hidden="true">...</svg>Badge
</span>
専用のクラスと変数#
| クラス・変数 | 意味 | 初期値 |
|---|---|---|
b--badge |
札の形 | なし |
b--badge--outline |
枠線だけの形(文字の色の枠) | なし |
--c |
文字の色 | var(--base)(outline は var(--text)) |
--bgc |
背景の色 | var(--text)(outline は transparent) |
--bdc |
枠線の色 | transparent(outline は currentColor) |
--bdw |
枠線の太さ | 1px |
--hl |
行の高さの調整(ハーフレディング) | var(--hl--xs) |
--cbox-cPct |
u--cbox と使うとき、文字の色に --keycolor を混ぜる割合 |
75% |
形のちがう札を並べても大きさがずれないように、ふつうの形にも透明な枠線が付いています。
React・Astro で書く場合#
import { Badge } from '@lism-css/ui/react/Badge';
<Badge>新着</Badge>
<Badge variant="outline" c="red">終了</Badge>
<Badge util="cbox" keycolor="blue">Blue</Badge>
Astro では @lism-css/ui/astro/Badge から読み込みます。
| Props | 何をするか |
|---|---|
variant |
b--badge--{variant} のクラスを付ける。用意されているのは outline |
@lism-css/ui を使わずに作る#
本体のクラスだけでも作れます。
表示例
<div class="l--cluster -g:15">
<span class="-fz:xs -hl:xs -py:5 -px:10 -bgc:text -c:base -bdrs:99">Badge</span>
<span class="-fz:xs -hl:xs -py:5 -px:10 -bd -bdc:current -bdrs:99">Badge</span>
</div>
関連するページ#
- Button(ボタン):押せるボタンの形
- l--cluster(横に並べて折り返す):札を並べる
- UI コンポーネントの使い方:読み込み方
公式ドキュメント
2026年10月5日時点の内容(lism-css 1.0.1・@lism-css/ui 0.40.1)をもとに、やさしい日本語でまとめています。