Badge API
Demos
For examples and details on the usage of this React component, visit the component demo pages:
Import
import Badge from '@mui/material/Badge';
// or
import { Badge } from '@mui/material';
Component name
The nameMuiBadge
can be used when providing default props or style overrides in the theme.Props
Props of the native component are also available.
Name | Type | Default | Description |
---|---|---|---|
anchorOrigin | { horizontal: 'left' | 'right', vertical: 'bottom' | 'top' } | { vertical: 'top', horizontal: 'right', } | The anchor of the badge. |
badgeContent | node | The content rendered within the badge. | |
children | node | The badge will be added relative to this node. | |
classes | object | Override or extend the styles applied to the component. See CSS API below for more details. | |
color | 'default' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | string | 'default' | The color of the component. It supports both default and custom theme colors, which can be added as shown in the palette customization guide. |
component | elementType | The component used for the root node. Either a string to use a HTML element or a component. | |
components | { Badge?: elementType, Root?: elementType } | {} | The components used for each slot inside. This prop is an alias for the slots prop. It's recommended to use the slots prop instead. |
componentsProps | { badge?: func | object, root?: func | object } | {} | The extra props for the slot components. You can override the existing props or add new ones. This prop is an alias for the slotProps prop. It's recommended to use the slotProps prop instead, as componentsProps will be deprecated in the future. |
invisible | bool | false | If true , the badge is invisible. |
max | number | 99 | Max count to show. |
overlap | 'circular' | 'rectangular' | 'rectangular' | Wrapped shape the badge should overlap. |
showZero | bool | false | Controls whether the badge is hidden when badgeContent is zero. |
slotProps | { badge?: func | object, root?: func | object } | {} | The props used for each slot inside the Badge. |
slots | { badge?: elementType, root?: elementType } | {} | The components used for each slot inside the Badge. Either a string to use a HTML element or a component. |
sx | Array<func | object | bool> | func | object | The system prop that allows defining system overrides as well as additional CSS styles. See the `sx` page for more details. | |
variant | 'dot' | 'standard' | string | 'standard' | The variant to use. |
The
ref
is forwarded to the root element.CSS
Rule name | Global class | Description |
---|---|---|
root | .MuiBadge-root | Class name applied to the root element. |
badge | .MuiBadge-badge | Class name applied to the badge `span` element. |
dot | .MuiBadge-dot | Class name applied to the badge `span` element if variant="dot" . |
standard | .MuiBadge-standard | Class name applied to the badge `span` element if variant="standard" . |
anchorOriginTopRight | .MuiBadge-anchorOriginTopRight | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'right' }} . |
anchorOriginBottomRight | .MuiBadge-anchorOriginBottomRight | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'right' }} . |
anchorOriginTopLeft | .MuiBadge-anchorOriginTopLeft | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'left' }} . |
anchorOriginBottomLeft | .MuiBadge-anchorOriginBottomLeft | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'left' }} . |
invisible | .MuiBadge-invisible | State class applied to the badge `span` element if invisible={true} . |
colorPrimary | .MuiBadge-colorPrimary | Styles applied to the badge `span` element if color="primary" . |
colorSecondary | .MuiBadge-colorSecondary | Styles applied to the badge `span` element if color="secondary" . |
colorError | .MuiBadge-colorError | Styles applied to the badge `span` element if color="error" . |
colorInfo | .MuiBadge-colorInfo | Styles applied to the badge `span` element if color="info" . |
colorSuccess | .MuiBadge-colorSuccess | Styles applied to the badge `span` element if color="success" . |
colorWarning | .MuiBadge-colorWarning | Styles applied to the badge `span` element if color="warning" . |
anchorOriginTopRightRectangular | .MuiBadge-anchorOriginTopRightRectangular | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'right' }} overlap="rectangular" . |
anchorOriginBottomRightRectangular | .MuiBadge-anchorOriginBottomRightRectangular | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'right' }} overlap="rectangular" . |
anchorOriginTopLeftRectangular | .MuiBadge-anchorOriginTopLeftRectangular | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'left' }} overlap="rectangular" . |
anchorOriginBottomLeftRectangular | .MuiBadge-anchorOriginBottomLeftRectangular | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'left' }} overlap="rectangular" . |
anchorOriginTopRightCircular | .MuiBadge-anchorOriginTopRightCircular | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'right' }} overlap="circular" . |
anchorOriginBottomRightCircular | .MuiBadge-anchorOriginBottomRightCircular | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'right' }} overlap="circular" . |
anchorOriginTopLeftCircular | .MuiBadge-anchorOriginTopLeftCircular | Class name applied to the badge `span` element if anchorOrigin={{ 'top', 'left' }} overlap="circular" . |
anchorOriginBottomLeftCircular | .MuiBadge-anchorOriginBottomLeftCircular | Class name applied to the badge `span` element if anchorOrigin={{ 'bottom', 'left' }} overlap="circular" . |
overlapRectangular | .MuiBadge-overlapRectangular | Class name applied to the badge `span` element if overlap="rectangular" . |
overlapCircular | .MuiBadge-overlapCircular | Class name applied to the badge `span` element if overlap="circular" . |
You can override the style of the component using one of these customization options:
- With a global class name.
- With a rule name as part of the component's
styleOverrides
property in a custom theme.