Hi Friends đź‘‹,
Welcome To Infinitbility! ❤️
Today, we will learn to change the size of mui icon ( material icons ) with installation steps also an example of material icon size, and custom icon size.
Want list of all material icons, Click Here.
Let’s start the today’s tutorial How to change material icon size react?
Table Of Content
- Installation
- Example of using the material icon
- Example of Material icon font size
- Example of Material icon custom font size
- Combined examples with output
Okay, now we know what we are going to do let’s start with Installation.
Installation
Install material package ( MUI )
- For NPM developers
npm install @mui/material @emotion/react @emotion/styled
- For Yarn developers
yarn add @mui/material @emotion/react @emotion/styled
Install material icon package
- For NPM developers
npm install @mui/icons-material
- For Yarn developers
yarn add @mui/icons-material
Example of use material icon
We have installed material icons in our react.js project, now we have to import some sample icons from the package and use it in a component.
Here, we are using the example of the delete icon.
import * as React from 'react';
import Grid from '@mui/material/Grid';
import Typography from '@mui/material/Typography';
import DeleteIcon from '@mui/icons-material/Delete';
export default function SvgMaterialIcons() {
return (
<Grid container sx={{ color: 'text.primary', width: '50%', margin: 'auto', marginTop: '50px' }}>
<Grid item xs={6}>
<Typography>Default</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon />
</Grid>
</Grid>
);
}
Example of Material icon font size
To change the size of the icon, the material icon provides fontSize
attribute and their own defined sizes like small
, large
, etc.
let’s see how we can able do that in material icons.
import * as React from 'react';
import Grid from '@mui/material/Grid';
import Typography from '@mui/material/Typography';
import DeleteIcon from '@mui/icons-material/Delete';
export default function SvgMaterialIcons() {
return (
<Grid container sx={{ color: 'text.primary', width: '50%', margin: 'auto', marginTop: '50px' }}>
<Grid item xs={6}>
<Typography>Small</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon fontSize="small" />
</Grid>
<Grid item xs={6}>
<Typography>Default</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon />
</Grid>
<Grid item xs={6}>
<Typography>Large</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon fontSize="large" />
</Grid>
</Grid>
);
}
Example of Material icon custom font size
To handle every icon size and dynamic size, the Material icon provide the sx
attribute where we have to provide font size like a CSS.
let’s see how can we do that.
import * as React from 'react';
import Grid from '@mui/material/Grid';
import Typography from '@mui/material/Typography';
import DeleteIcon from '@mui/icons-material/Delete';
export default function SvgMaterialIcons() {
return (
<Grid container sx={{ color: 'text.primary', width: '50%', margin: 'auto', marginTop: '50px' }}>
<Grid item xs={6}>
<DeleteIcon sx={{ fontSize: 50 }} />
</Grid>
</Grid>
);
}
Combined examples with output
Here, we will combine all the above examples in one file and run it in react project.
import * as React from 'react';
import Grid from '@mui/material/Grid';
import Typography from '@mui/material/Typography';
import DeleteIcon from '@mui/icons-material/Delete';
export default function SvgMaterialIcons() {
return (
<Grid container sx={{ color: 'text.primary', width: '50%', margin: 'auto', marginTop: '50px' }}>
<Grid item xs={6}>
<Typography>Small</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon fontSize="small" />
</Grid>
<Grid item xs={6}>
<Typography>Default</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon />
</Grid>
<Grid item xs={6}>
<Typography>Large</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon fontSize="large" />
</Grid>
<Grid item xs={6}>
<Typography>Custom Font size</Typography>
</Grid>
<Grid item xs={6}>
<DeleteIcon sx={{ fontSize: 50 }} />
</Grid>
</Grid>
);
}
Output
when you run the above code, you will get the output of all mentioned icon sizes. let’s see the output.
All the best đź‘Ť.