Grid
This component allows you to lay elements out using CSS Grid Layout
Basic Usage
import { Grid, GridItem } from '@krakentech/coral';
<Grid gap="md" gridTemplateColumns="repeat(2, 1fr)">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
Properties
alignContent
<div style={{ height: 300 }}>
<Grid
gap="md"
fullHeight
gridTemplateColumns="repeat(2, 1fr)"
alignContent="space-between"
>
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>
</div>1
2
3
4
alignItems
<div style={{ height: 200 }}>
<Grid
gap="md"
gridTemplateColumns="repeat(2, 1fr)"
gridTemplateRows="150px"
alignItems="end"
fullHeight
>
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>
</div>1
2
3
4
gap
<Grid gap="xl" gridTemplateColumns="repeat(2, 1fr)">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
rowGap
<Grid rowGap="xl" gridTemplateColumns="repeat(2, 1fr)">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
columnGap
<Grid columnGap="xl" gridTemplateColumns="repeat(2, 1fr)">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
justifyContent
<Grid gap="md" gridTemplateColumns="150px" justifyContent="center">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
justifyItems
<Grid gap="md" gridTemplateColumns="repeat(2, 1fr)" justifyItems="end">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
placeItems
<Grid gap="md" gridTemplateColumns="repeat(2, 1fr)" placeItems="center">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
gridTemplateAreas
<Grid
gap="md"
gridTemplateColumns="200px 1fr 100px"
gridTemplateAreas={`
"header header header"
"nav main aside"
"nav footer footer"
`}
>
<GridItem gridArea="header">
<Card theme="secondary900" borderless padding="small">
Header
</Card>
</GridItem>
<GridItem gridArea="nav">...</GridItem>
<GridItem gridArea="main">...</GridItem>
<GridItem gridArea="aside">...</GridItem>
<GridItem gridArea="footer">...</GridItem>
</Grid>Header
Nav
Main
Aside
Footer
gridTemplateColumns
<Grid gap="md" gridTemplateColumns="1fr 2fr">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
gridTemplateRows
<Grid gap="md" gridTemplateRows="1fr 2fr" gridTemplateColumns="1fr 2fr">
<GridItem>
<Card theme="secondary900" borderless padding="small">
1
</Card>
</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
<GridItem>...</GridItem>
</Grid>1
2
3
4
Full API
Last updated on