PackagesUIComponentsLayouts
Divider
セクション間の区切りを示すセマンティックな区切り線コンポーネント。
いつ使うか
- コンテンツのセクション間に視覚的・意味的な区切りを入れるとき
- Stack 内で関連度の異なるグループを分離するとき
- ツールバーやナビゲーション内で項目をグループ分けするとき
いつ使わないか
- 装飾目的の罫線には
borderユーティリティを使う - 十分な
gapやスペースで区別できる場合は不要である
Usage
import { Divider } from '@bi-shop-it/ui/divider';
<Stack>
<p>セクション A</p>
<Divider />
<p>セクション B</p>
</Stack>;Props
| Prop | 型 | デフォルト | 説明 |
|---|---|---|---|
orientation | ResponsiveValue<'horizontal' | 'vertical'> | 'horizontal' | 区切りの方向 |
状態
水平(デフォルト)
Stack 内でセクションを区切る基本的な使い方。
セクション A
セクション B
<Stack>
<p>セクション A</p>
<Divider />
<p>セクション B</p>
</Stack>垂直
横並びの要素間を区切るとき orientation="vertical" を指定する。
左
右
<div className="flex h-20 items-center gap-4">
<p>左</p>
<Divider orientation="vertical" />
<p>右</p>
</div>レスポンシブ
Stack の direction と連動させ、ブレークポイントで方向を切り替えられる。
セクション A
セクション B
<Stack direction={{ base: 'column', md: 'row' }}>
<p>セクション A</p>
<Divider orientation={{ base: 'horizontal', md: 'vertical' }} />
<p>セクション B</p>
</Stack>アクセシビリティ
コンポーネントが内部で処理すること
role="separator"が Radix UI によって自動的に付与されるaria-orientationがorientationprop に応じて設定されるdecorative={false}を強制し、常にセマンティックな区切りとして機能する
利用者が対応すること
- 装飾目的の罫線には Divider を使わず、CSS の
borderを使うこと
関連コンポーネント
- Stack / HStack — 垂直・水平方向のレイアウト