Badge <l-badge>
Badges are used to draw attention and display statuses or counts. Commonly used in tabular data, lists, and navigation to indicate state or category.
HTML tag
<l-badge>⏣Native HTML
⬡Progressive
◇Custom
⬢Shadow DOM
Custom Element (no Shadow DOM)
Options
Appearance
Add appearance="filled" (tinted background, no border), appearance="filled-outlined" (tinted background with border), or appearance="accent" (strong background, contrast text). Default is outlined (border, no background).
Outlined
Default
Info
Success
Warning
Danger
Filled
Default
Info
Success
Warning
Danger
Filled outlined
Default
Info
Success
Warning
Danger
Accent
Default
Info
Success
Warning
Danger
Code
html
<div class="flex flex-col gap-3">
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Outlined</span>
<l-badge>Default</l-badge>
<l-badge variant="info">Info</l-badge>
<l-badge variant="success">Success</l-badge>
<l-badge variant="warning">Warning</l-badge>
<l-badge variant="danger">Danger</l-badge>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Filled</span>
<l-badge appearance="filled">Default</l-badge>
<l-badge
appearance="filled"
variant="info"
>Info</l-badge
>
<l-badge
appearance="filled"
variant="success"
>Success</l-badge
>
<l-badge
appearance="filled"
variant="warning"
>Warning</l-badge
>
<l-badge
appearance="filled"
variant="danger"
>Danger</l-badge
>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Filled outlined</span>
<l-badge appearance="filled-outlined">Default</l-badge>
<l-badge
appearance="filled-outlined"
variant="info"
>Info</l-badge
>
<l-badge
appearance="filled-outlined"
variant="success"
>Success</l-badge
>
<l-badge
appearance="filled-outlined"
variant="warning"
>Warning</l-badge
>
<l-badge
appearance="filled-outlined"
variant="danger"
>Danger</l-badge
>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Accent</span>
<l-badge appearance="accent">Default</l-badge>
<l-badge
appearance="accent"
variant="info"
>Info</l-badge
>
<l-badge
appearance="accent"
variant="success"
>Success</l-badge
>
<l-badge
appearance="accent"
variant="warning"
>Warning</l-badge
>
<l-badge
appearance="accent"
variant="danger"
>Danger</l-badge
>
</div>
</div>Pill
Add the pill attribute for a fully rounded shape.
Outlined
Default
Info
Success
Warning
Danger
Filled
Default
Info
Success
Warning
Danger
Filled outlined
Default
Info
Success
Warning
Danger
Accent
Default
Info
Success
Warning
Danger
Code
html
<div class="flex flex-col gap-3">
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Outlined</span>
<l-badge pill>Default</l-badge>
<l-badge
pill
variant="info"
>Info</l-badge
>
<l-badge
pill
variant="success"
>Success</l-badge
>
<l-badge
pill
variant="warning"
>Warning</l-badge
>
<l-badge
pill
variant="danger"
>Danger</l-badge
>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Filled</span>
<l-badge
pill
appearance="filled"
>Default</l-badge
>
<l-badge
pill
appearance="filled"
variant="info"
>Info</l-badge
>
<l-badge
pill
appearance="filled"
variant="success"
>Success</l-badge
>
<l-badge
pill
appearance="filled"
variant="warning"
>Warning</l-badge
>
<l-badge
pill
appearance="filled"
variant="danger"
>Danger</l-badge
>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Filled outlined</span>
<l-badge
pill
appearance="filled-outlined"
>Default</l-badge
>
<l-badge
pill
appearance="filled-outlined"
variant="info"
>Info</l-badge
>
<l-badge
pill
appearance="filled-outlined"
variant="success"
>Success</l-badge
>
<l-badge
pill
appearance="filled-outlined"
variant="warning"
>Warning</l-badge
>
<l-badge
pill
appearance="filled-outlined"
variant="danger"
>Danger</l-badge
>
</div>
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm text-color-tertiary w-28">Accent</span>
<l-badge
pill
appearance="accent"
>Default</l-badge
>
<l-badge
pill
appearance="accent"
variant="info"
>Info</l-badge
>
<l-badge
pill
appearance="accent"
variant="success"
>Success</l-badge
>
<l-badge
pill
appearance="accent"
variant="warning"
>Warning</l-badge
>
<l-badge
pill
appearance="accent"
variant="danger"
>Danger</l-badge
>
</div>
</div>Sizes
Add size="sm" or size="lg". Default is md.
Code
html
<l-badge size="sm">Small</l-badge>
<l-badge>Medium</l-badge>
<l-badge size="lg">Large</l-badge>Variants
Add variant="info", variant="success", variant="warning", or variant="danger". Default is neutral.
Code
html
<l-badge>Neutral</l-badge>
<l-badge variant="info">Info</l-badge>
<l-badge variant="success">Success</l-badge>
<l-badge variant="warning">Warning</l-badge>
<l-badge variant="danger">Danger</l-badge>Accessibility
Criteria
- Color contrast
Text and background meet minimum contrast ratio across all appearances and variants
WCAG1.4.3RGAA3.2
API reference
Importing
js
import 'luxen-ui/badge';css
@import 'luxen-ui/css/badge';Attributes & Properties
sizeAttribute- Badge size (
sm,lg). Default is md. appearanceAttribute- Visual appearance (
filled,filled-outlined,accent). Default is outlined. variantAttribute- Style variant (
info,success,warning,danger). Default is neutral. pillAttribute- Fully rounded pill shape