import { Separator } from "@/components/ui/separator"
export function SeparatorDemo() {
return (
<div className="flex max-w-sm flex-col gap-4 text-sm">
<div className="flex flex-col gap-1.5">
<div className="leading-none font-medium">shadcn/ui</div>
<div className="text-muted-foreground">
The Foundation for your Design System
</div>
</div>
<Separator />
<div>
A set of beautifully designed components that you can customize, extend,
and build on.
</div>
</div>
)
}Installation
npx shadcn@latest add @fulldev/separator
Usage
import { Separator } from "@/components/ui/separator"
<Separator />
Vertical
Use orientation="vertical" for a vertical separator.
import { Separator } from "@/components/ui/separator"
export function SeparatorVertical() {
return (
<div className="flex h-5 items-center gap-4 text-sm">
<div>Blog</div>
<Separator orientation="vertical" />
<div>Docs</div>
<Separator orientation="vertical" />
<div>Source</div>
</div>
)
}Menu
Vertical separators between menu items with descriptions.
import { Separator } from "@/components/ui/separator"
export function SeparatorMenu() {
return (
<div className="flex items-center gap-2 text-sm md:gap-4">
<div className="flex flex-col gap-1">
<span className="font-medium">Settings</span>
<span className="text-xs text-muted-foreground">
Manage preferences
</span>
</div>
<Separator orientation="vertical" />
<div className="flex flex-col gap-1">
<span className="font-medium">Account</span>
<span className="text-xs text-muted-foreground">
Profile & security
</span>
</div>
<Separator orientation="vertical" className="hidden md:block" />
<div className="hidden flex-col gap-1 md:flex">
<span className="font-medium">Help</span>
<span className="text-xs text-muted-foreground">Support & docs</span>
</div>
</div>
)
}List
Horizontal separators between list items.
import { Separator } from "@/components/ui/separator"
export function SeparatorList() {
return (
<div className="flex w-full max-w-sm flex-col gap-2 text-sm">
<dl className="flex items-center justify-between">
<dt>Item 1</dt>
<dd className="text-muted-foreground">Value 1</dd>
</dl>
<Separator />
<dl className="flex items-center justify-between">
<dt>Item 2</dt>
<dd className="text-muted-foreground">Value 2</dd>
</dl>
<Separator />
<dl className="flex items-center justify-between">
<dt>Item 3</dt>
<dd className="text-muted-foreground">Value 3</dd>
</dl>
</div>
)
}RTL
To enable RTL support in shadcn/ui, see the RTL configuration guide.
"use client"
import * as React from "react"
import { Separator } from "@/components/ui/separator"
import {
useTranslation,
type Translations,
} from "@/components/language-selector"
const translations: Translations = {
en: {
dir: "ltr",
values: {
title: "shadcn/ui",
subtitle: "The Foundation for your Design System",
description:
"A set of beautifully designed components that you can customize, extend, and build on.",
},
},
ar: {
dir: "rtl",
values: {
title: "shadcn/ui",
subtitle: "الأساس لنظام التصميم الخاص بك",
description:
"مجموعة من المكونات المصممة بشكل جميل يمكنك تخصيصها وتوسيعها والبناء عليها.",
},
},
he: {
dir: "rtl",
values: {
title: "shadcn/ui",
subtitle: "הבסיס למערכת העיצוב שלך",
description:
"סט של רכיבים מעוצבים בצורה יפה שאתה יכול להתאים אישית, להרחיב ולבנות עליהם.",
},
},
}
export function SeparatorRtl() {
const { dir, t } = useTranslation(translations, "ar")
return (
<div className="flex max-w-sm flex-col gap-4 text-sm" dir={dir}>
<div className="flex flex-col gap-1.5">
<div className="leading-none font-medium">{t.title}</div>
<div className="text-muted-foreground">{t.subtitle}</div>
</div>
<Separator />
<div>{t.description}</div>
</div>
)
}API Reference
Source: react/src/components/ui/separator.tsx
See the Base UI Separator documentation.