Grid
Grid
は、グリッドレイアウトを管理するためのコンポーネントです。また、便利なスタイルのショートハンドが用意されています。
インポート
import { Grid, GridItem } from "@yamada-ui/react"
Grid
に用意されているショートハンドは下記の通りです。
templateColumns
:gridTemplateColumns
を短縮したprops
です。templateRows
:gridTemplateRows
を短縮したprops
です。templateAreas
:gridTemplateAreas
を短縮したprops
です。column
:gridColumn
を短縮したprops
です。row
:gridRow
を短縮したprops
です。area
:gridArea
を短縮したprops
です。autoFlow
:gridAutoFlow
を短縮したprops
です。autoColumns
:gridAutoColumns
を短縮したprops
です。autoRows
:gridAutoRows
を短縮したprops
です。
GridItem
に用意されているショートハンドは下記の通りです。
area
:gridArea
を短縮したprops
です。colStart
:gridColumnStart
を短縮したprops
です。colEnd
:gridColumnEnd
を短縮したprops
です。rowStart
:gridRowStart
を短縮したprops
です。rowEnd
:gridRowEnd
を短縮したprops
です。
ショートハンド以外にも、冗長なprops
を渡すこともできます。
使い方
編集可能な例
<Grid templateColumns="repeat(4, 1fr)" gap="md"> <GridItem w="full" h="4xs" rounded="md" bg="primary" /> <GridItem w="full" h="4xs" rounded="md" bg="secondary" /> <GridItem w="full" h="4xs" rounded="md" bg="warning" /> <GridItem w="full" h="4xs" rounded="md" bg="danger" /> </Grid>
templateAreas
を使う
編集可能な例
<Grid templateAreas={` "one one two three" "four five two six" "four seven seven eight" `} gap="md" > <GridItem area="one" w="full" minH="4xs" rounded="md" bg="primary" /> <GridItem area="two" w="full" minH="4xs" rounded="md" bg="secondary" /> <GridItem area="three" w="full" minH="4xs" rounded="md" bg="warning" /> <GridItem area="four" w="full" minH="4xs" rounded="md" bg="danger" /> <GridItem area="five" w="full" minH="4xs" rounded="md" bg="primary" /> <GridItem area="six" w="full" minH="4xs" rounded="md" bg="secondary" /> <GridItem area="seven" w="full" minH="4xs" rounded="md" bg="warning" /> <GridItem area="eight" w="full" minH="4xs" rounded="md" bg="danger" /> </Grid>
複数の列と行をまたがる
編集可能な例
<Grid w="full" templateColumns="repeat(4, 1fr)" templateRows="repeat(3, 1fr)" gap="md" > <GridItem colSpan={2} w="full" minH="4xs" rounded="md" bg="primary" /> <GridItem colSpan={2} rowSpan={3} w="full" minH="4xs" rounded="md" bg="secondary" /> <GridItem rowStart={2} rowEnd={4} w="full" minH="4xs" rounded="md" bg="warning" /> <GridItem colStart={2} colEnd={3} rowStart={2} rowEnd={4} w="full" minH="4xs" rounded="md" bg="danger" /> </Grid>
GitHubでこのページを編集する