Grid
Gridは、グリッドレイアウトを管理するためのコンポーネントです。また、便利なスタイルのショートハンドが用意されています。
<Grid gap="md" templateColumns="repeat(4, 1fr)">
<For each={Array.from({ length: 4 })}>
{(_, index) => (
<GridItem
key={index}
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
/>
)}
</For>
</Grid>
使い方
import { Grid, GridItem } from "@yamada-ui/react"
import { Grid, GridItem } from "@/components/ui"
import { Grid, GridItem } from "@workspaces/ui"
<Grid>
<GridItem />
</Grid>
templateAreasを使う
<Grid
templateAreas={`
"one one two three"
"four five two six"
"four seven seven eight"
`}
gap="md"
>
<For each={["one", "two", "three", "four", "five", "six", "seven", "eight"]}>
{(area, index) => (
<GridItem
key={index}
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
area={area}
/>
)}
</For>
</Grid>
複数の列と行をまたがる
<Grid gap="md" templateColumns="repeat(4, 1fr)" templateRows="repeat(3, 1fr)">
<GridItem
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
colSpan={2}
/>
<GridItem
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
colSpan={2}
rowSpan={3}
/>
<GridItem
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
rowStart={2}
rowEnd={4}
/>
<GridItem
bg="bg.contrast"
color="fg.contrast"
minH="16"
h="full"
colStart={2}
colEnd={3}
rowStart={2}
rowEnd={4}
/>
</Grid>
Props
類似のコンポーネント
Bleed
Bleedは、要素をコンテナの境界から外すために使用されるコンポーネントです。
Box
Boxは、他のすべてのコンポーネントがその上に構築される最も抽象的なコンポーネントです。デフォルトでは、div要素をレンダリングします。
Center
Centerは、コンポーネント内の子要素を中央に配置するコンポーネントです。
Container
Containerは、汎用的な区分要素として使用するコンポーネントです。デフォルトでは、section要素をレンダリングします。
Flex
Flexは、Boxにflexを設定したコンポーネントです。また、便利なスタイルのショートハンドが用意されています。
Float
Floatは、要素をコンテナの端に固定するために使用されるコンポーネントです。
Group
Groupは、複数の要素をまとめて扱うためのコンポーネントです。
HStack
HStackは、子要素を水平方向にスタックするために使用されます。