Stable

Label

Label is the smallest role in the type scale — used for component labels (buttons, tabs, chips) or very small text like captions. It renders a <p>.

Overview

Label is one of five components — alongside Display, Headline, Title, and Body — implementing the Material Design 3 type scale. They share the same prop shape (size, emphasized) and differ only in typescale role and element tag.

Most interactive components in this library (buttons, tabs, chips) apply their own label typescale classes internally, so you'll typically reach for Label directly only for standalone captions or custom controls.

Import

import { Label } from '@noxlovette/material';

Live Demo

See it live, with Controls, in Storybook rather than a hand-rolled preview here.

widgets

Playground

Size and emphasized Controls.

Basic Usage

<script lang="ts">
  import { Label } from '@noxlovette/material';
</script>

<Label size="small">Caption text</Label>

Label Props

PropTypeDefaultDescription
children required
SnippetThe text content, rendered inside a <p>.
size
"small" | "medium" | "large""medium"Selects the M3 type-scale token, e.g. md-sys-typescale-label-large.
emphasized
booleanfalseBumps the font weight to semibold for extra emphasis.
class
stringAdditional classes merged onto the root element, e.g. a color-role utility.

Accessibility

text_fields

Small text, real contrast

At label sizes, contrast matters more, not less — always pair with an on-* color-role utility rather than a low-opacity color.

block

Not a heading

Renders as a plain <p> — never use it as a substitute for a real heading level.