docs/data/material/components/avatars/avatars.md
{{"component": "@mui/internal-core-docs/ComponentLinkHeader"}}
Image avatars can be created by passing standard img props src or srcSet to the component.
{{"demo": "ImageAvatars.js"}}
Avatars containing simple characters can be created by passing a string as children.
{{"demo": "LetterAvatars.js"}}
You can use different background colors for the avatar. The following demo generates the color based on the name of the person.
{{"demo": "BackgroundLetterAvatars.js"}}
You can change the size of the avatar with the height and width CSS properties.
{{"demo": "SizeAvatars.js"}}
Icon avatars are created by passing an icon as children.
{{"demo": "IconAvatars.js"}}
If you need square or rounded avatars, use the variant prop.
{{"demo": "VariantAvatars.js"}}
If there is an error loading the avatar image, the component falls back to an alternative in the following order:
alt text{{"demo": "FallbackAvatars.js"}}
AvatarGroup renders its children as a stack. Use the max prop to limit the number of avatars.
{{"demo": "GroupAvatars.js"}}
If you need to control the total number of avatars not shown, you can use the total prop.
{{"demo": "TotalAvatars.js"}}
Set the renderSurplus prop as a callback to customize the surplus avatar. The callback will receive the surplus number as an argument based on the children and the max prop, and should return a React.ReactNode.
The renderSurplus prop is useful when you need to render the surplus based on the data sent from the server.
{{"demo": "CustomSurplusAvatars.js"}}
You can change the spacing between avatars using the spacing prop. You can use one of the presets ("medium", the default, or "small") or set a custom numeric value.
{{"demo": "Spacing.js"}}
{{"demo": "BadgeAvatars.js"}}
{{"demo": "UploadAvatars.js"}}