Sheet

Edge-anchored surface on bits-ui Dialog. Slides in from any side with a 200ms fade-and-translate, carries Title, Description, and Close like a Dialog.

Usage

Sides

Sizes

Override the default width with a Tailwind max-width class on Sheet.Content. Useful for narrower drawers or full-bleed panels.

Scrollable content

Wrap a long body in ScrollArea with flex-1 — header and footer stay pinned, only the middle scrolls.

Form in sheet

Wrap the body in a <form> with onsubmit — the submit button can live in the footer or be a primary type="submit" action that closes the sheet.

Sheet.Content props

Inherits bits-ui Dialog.Content props via spread.

PropTypeDescription
'top' | 'right' | 'bottom' | 'left'Edge the sheet enters from. Width caps at sm on left/right; height is auto on top/bottom.
booleanRenders the absolute-positioned top-right ghost close button.
ComponentProps<Sheet.Portal>Forwarded to the internal portal.
stringMerged onto the content surface via tailwind-merge.