Divider
콘텐츠를 구분하는 구분선 컴포넌트입니다.
개요
Divider는 콘텐츠 영역을 시각적으로 구분하는 컴포넌트입니다. 수평 또는 수직 방향으로 표시할 수 있으며, 텍스트를 포함할 수도 있습니다.
주요 특징:
- 수평/수직 구분선
- 텍스트가 있는 구분선
- 3가지 스타일 (solid, dashed, dotted)
- 간격 조절 가능
사용 사례:
- 섹션 구분
- 리스트 아이템 구분
- 폼 그룹 구분
- 레이아웃 영역 구분
설치
npx @vortex/cli add separator --package foundation기본 사용법
import { Separator } from "@vortex/ui-foundation";
export default function Example() {
return (
<div>
<p>Content 1</p>
<Separator />
<p>Content 2</p>
</div>
);
}Variants (변형)
수평 구분선 (기본)
<Separator orientation="horizontal" />수직 구분선
<div className="flex items-center h-10">
<span>Left</span>
<Separator orientation="vertical" />
<span>Right</span>
</div>스타일
Solid (기본)
<Separator style="solid" />Dashed
<Separator style="dashed" />Dotted
<Separator style="dotted" />텍스트가 있는 구분선
<Separator>
<span className="px-md text-sm text-gray-500">또는</span>
</Separator>Props API
| Prop | Type | Default | Description |
|---|---|---|---|
| orientation | ’horizontal’ | ‘vertical' | 'horizontal’ | 구분선 방향 |
| style | ’solid’ | ‘dashed’ | ‘dotted' | 'solid’ | 구분선 스타일 |
| className | string | - | 추가 CSS 클래스 |
| children | ReactNode | - | 구분선 내 텍스트 |
접근성
Separator 컴포넌트는 WCAG 2.1 AA 기준을 준수합니다.
ARIA 속성:
role="separator"(자동 적용)aria-orientation(vertical일 때)
스크린 리더 지원:
- 구분선으로 인식됨
- 텍스트 내용 읽힘
예제
예제 1: 로그인 폼 구분
export default function LoginForm() {
return (
<div className="space-y-md">
<Button variant="outline" className="w-full">
Google로 로그인
</Button>
<Separator>
<span className="px-md text-sm text-gray-500">또는</span>
</Separator>
<Input placeholder="이메일" />
<Input type="password" placeholder="비밀번호" />
<Button className="w-full">로그인</Button>
</div>
);
}예제 2: 리스트 구분
export default function SettingsList() {
return (
<div>
<div className="py-md">
<h3>프로필 설정</h3>
</div>
<Separator />
<div className="py-md">
<h3>알림 설정</h3>
</div>
<Separator />
<div className="py-md">
<h3>보안 설정</h3>
</div>
</div>
);
}관련 컴포넌트
Last updated on