How to create Paper in Material-UI react
Material-UI Paper component:
Paper component of Material-UI is used to create a flat and opaque layout. It is similar to the Card component, i.e. we can use it as a background for other components.
This post will show you how to use Paper and its different properties.
YouTube video:
I have published one video on YouTube. You can watch it here:
How to import Paper:
Paper is defined in material-ui/core. We can import it as like below:
import { Paper } from "@material-ui/core";
A simple example:
Let's take a look at the below example:
import { Box, Paper } from "@material-ui/core";
import { Theme, createStyles, makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles((theme: Theme) =>
createStyles({
root: {
display: "flex",
flexWrap: "wrap",
"& > *": {
margin: theme.spacing(10),
width: theme.spacing(15),
height: theme.spacing(15),
},
},
})
);
function App() {
const classes = useStyles();
return (
<Box className={classes.root}>
<Paper>Hello World</Paper>
</Box>
);
}
export default App;
It will create a Paper component with a text in it.

How to change the default component:
Paper uses div internally. But we can change it to any other component by using the component props.
<Paper component="p">Paper with 'p'</Paper>
Using this props, you can also change it to any component like h1, h2, etc.
Change the elevation:
Elevation can be changed by using the elevation props.
<Paper elevation={3}>elevation=3</Paper>
Outlined:
variant props is used to change the variant. We can change it to outlined:
<Paper variant="variant">variant='outlined'</Paper>
square:
We can change one Paper to square layout by using the square props:
<Paper square>square</Paper>
It will remove the corner radius.
Complete example:
Below is the complete example with different usages we discussed above:
import { Box, Paper } from "@material-ui/core";
import { Theme, createStyles, makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles((theme: Theme) =>
createStyles({
root: {
display: "flex",
flexWrap: "wrap",
"& > *": {
margin: theme.spacing(3),
width: theme.spacing(20),
height: theme.spacing(20),
},
},
})
);
function App() {
const classes = useStyles();
return (
<Box className={classes.root}>
<Paper>Hello World</Paper>
<Paper component="p">Paper with 'p'</Paper>
<Paper elevation={10}>elevation=10</Paper>
<Paper variant="variant">variant='outlined'</Paper>
<Paper square>square</Paper>
</Box>
);
}
export default App;
