Meter
A graphical display of a numeric value within a range.
View as MarkdownAnatomy
Import the component and assemble its parts:
import { Meter } from '@base-ui-components/react/meter';
<Meter.Root>
  <Meter.Label />
  <Meter.Track>
    <Meter.Indicator />
  </Meter.Track>
  <Meter.Value />
</Meter.Root>API reference
Root
Groups all parts of the meter and provides the value for screen readers.
Renders a <div> element.
value*number
—
value*number
—- Name
- Description
- The current value. 
- Type
- number
aria-valuetextstring
—
aria-valuetextstring
—- Name
- Description
- A string value that provides a user-friendly name for - aria-valuenow, the current value of the meter.
- Type
- string | undefined
getAriaValueTextfunction
—
getAriaValueTextfunction
—- Name
- Description
- A function that returns a string value that provides a human-readable text alternative for - aria-valuenow, the current value of the meter.
- Type
- | ((formattedValue: string, value: number) => string) | undefined
localeIntl.LocalesArgument
—
localeIntl.LocalesArgument
—- Name
- Description
- The locale used by - Intl.NumberFormatwhen formatting the value. Defaults to the user's runtime locale.
- Type
- Intl.LocalesArgument
styleReact.CSSProperties | function
—
styleReact.CSSProperties | function
—- Name
- Type
- | React.CSSProperties | ((state: Meter.Root.State) => CSSProperties | undefined) | undefined
minnumber
0
minnumber
0
- Name
- Description
- The minimum value 
- Type
- number | undefined
- Default
- 0
maxnumber
100
maxnumber
100
- Name
- Description
- The maximum value 
- Type
- number | undefined
- Default
- 100
formatIntl.NumberFormatOptions
—
formatIntl.NumberFormatOptions
—- Name
- Description
- Options to format the value. 
- Type
- Intl.NumberFormatOptions | undefined
classNamestring | function
—
classNamestring | function
—- Name
- Description
- CSS class applied to the element, or a function that returns a class based on the component’s state. 
- Type
- | string | ((state: Meter.Root.State) => string | undefined)
renderReactElement | function
—
renderReactElement | function
—- Name
- Description
- Allows you to replace the component’s HTML element with a different tag, or compose it with another component. - Accepts a - ReactElementor a function that returns the element to render.
- Type
- | ReactElement | (( props: HTMLProps, state: Meter.Root.State, ) => ReactElement)
Track
Contains the meter indicator and represents the entire range of the meter.
Renders a <div> element.
styleReact.CSSProperties | function
—
styleReact.CSSProperties | function
—- Name
- Type
- | React.CSSProperties | ((state: Meter.Root.State) => CSSProperties | undefined) | undefined
classNamestring | function
—
classNamestring | function
—- Name
- Description
- CSS class applied to the element, or a function that returns a class based on the component’s state. 
- Type
- | string | ((state: Meter.Root.State) => string | undefined)
renderReactElement | function
—
renderReactElement | function
—- Name
- Description
- Allows you to replace the component’s HTML element with a different tag, or compose it with another component. - Accepts a - ReactElementor a function that returns the element to render.
- Type
- | ReactElement | (( props: HTMLProps, state: Meter.Root.State, ) => ReactElement)
Indicator
Visualizes the position of the value along the range.
Renders a <div> element.
styleReact.CSSProperties | function
—
styleReact.CSSProperties | function
—- Name
- Type
- | React.CSSProperties | ((state: Meter.Root.State) => CSSProperties | undefined) | undefined
classNamestring | function
—
classNamestring | function
—- Name
- Description
- CSS class applied to the element, or a function that returns a class based on the component’s state. 
- Type
- | string | ((state: Meter.Root.State) => string | undefined)
renderReactElement | function
—
renderReactElement | function
—- Name
- Description
- Allows you to replace the component’s HTML element with a different tag, or compose it with another component. - Accepts a - ReactElementor a function that returns the element to render.
- Type
- | ReactElement | (( props: HTMLProps, state: Meter.Root.State, ) => ReactElement)
Value
A text element displaying the current value.
Renders a <span> element.
styleReact.CSSProperties | function
—
styleReact.CSSProperties | function
—- Name
- Type
- | React.CSSProperties | ((state: Meter.Root.State) => CSSProperties | undefined) | undefined
children((formattedValue: string, value: number) => ReactNode) | null
—
children((formattedValue: string, value: number) => ReactNode) | null
—- Name
- Type
- | ((formattedValue: string, value: number) => ReactNode) | null | undefined
classNamestring | function
—
classNamestring | function
—- Name
- Description
- CSS class applied to the element, or a function that returns a class based on the component’s state. 
- Type
- | string | ((state: Meter.Root.State) => string | undefined)
renderReactElement | function
—
renderReactElement | function
—- Name
- Description
- Allows you to replace the component’s HTML element with a different tag, or compose it with another component. - Accepts a - ReactElementor a function that returns the element to render.
- Type
- | ReactElement | (( props: HTMLProps, state: Meter.Root.State, ) => ReactElement)
Label
An accessible label for the meter.
Renders a <span> element.
styleReact.CSSProperties | function
—
styleReact.CSSProperties | function
—- Name
- Type
- | React.CSSProperties | ((state: Meter.Root.State) => CSSProperties | undefined) | undefined
classNamestring | function
—
classNamestring | function
—- Name
- Description
- CSS class applied to the element, or a function that returns a class based on the component’s state. 
- Type
- | string | ((state: Meter.Root.State) => string | undefined)
renderReactElement | function
—
renderReactElement | function
—- Name
- Description
- Allows you to replace the component’s HTML element with a different tag, or compose it with another component. - Accepts a - ReactElementor a function that returns the element to render.
- Type
- | ReactElement | (( props: HTMLProps, state: Meter.Root.State, ) => ReactElement)