Grid
Powerful fluid style layout container.
The Grid
component uses dynamic CSS media query to implement responsive layout, It has ultra-high performance
and very small size. Of course, it still supports dynamic props and custom breakpoints.
General
Dynamically scale container width while maintaining spacing.
Fluid layout
Containers for wrapping and scaling.
Responsive layout
Use different layouts for different screen widths.
Hide elements
Hide elements when unit size is 0.
Auto width
Auto fill remaining width.
custom breakpoints
Override the default breakpoints of the @geist-ui/core
.
const breakpoints: GeistUIThemesBreakpoints = {
xs: { min: '0', max: '650px' },
sm: { min: '650px', max: '900px' },
md: { min: '900px', max: '1280px' },
lg: { min: '1280px', max: '1920px' },
xl: { min: '1920px', max: '10000px' },
}
const App = () => {
const myTheme = Themes.createFromLight({
type: 'myTheme',
breakpoints,
})
return (
<GeistProvider themes={[myTheme]} themeType="myTheme">
<CssBaseline />
<AppComponent />
</GeistProvider>
)
}
APIs
Grid.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
justify | CSS "justify-content" property | Justify | Justify | flex-start |
alignItems | CSS "align-items" property | AlignItems | AlignItems | stretch |
alignContent | CSS "align-content" property | AlignContent | AlignContent | flex-start |
direction | CSS "flex-direction" property | Direction | Direction | row |
xs | width of grid, for xs breakpoints and wider screens | number | 0 - 24 , boolean | false |
sm | width of grid, for sm breakpoints and wider screens | number | 0 - 24 , boolean | false |
md | width of grid, for md breakpoints and wider screens | number | 0 - 24 , boolean | false |
lg | width of grid, for lg breakpoints and wider screens | number | 0 - 24 , boolean | false |
xl | width of grid, for xl breakpoints and wider screens | number | 0 - 24 , boolean | false |
... | native props | HTMLAttributes | 'id', 'className', ... | - |
Grid.Container.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
gap | spacing of children | number / float | - | 0 |
wrap | CSS "flex-wrap" property | Wrap | Wrap | wrap |
... | Grid props | Grid.Props | Grid.Props | - |
Justify
type Justify =
| 'flex-start'
| 'center'
| 'flex-end'
| 'space-between'
| 'space-around'
| 'space-evenly'
AlignItems
type AlignItems = 'flex-start' | 'center' | 'flex-end' | 'stretch' | 'baseline'
AlignContent
type AlignContent =
| 'stretch'
| 'center'
| 'flex-start'
| 'flex-end'
| 'space-between'
| 'space-around'
Direction
type Direction = 'row' | 'row-reverse' | 'column' | 'column-reverse'
Wrap
type Wrap = 'nowrap' | 'wrap' | 'wrap-reverse'
Contributors