Scroll Area
A scrollable region with a slim custom scrollbar that fades in on hover and while scrolling.
tsx
import { ScrollArea } from "@/registry/seam/ui/scroll-area"
export default function ScrollAreaDemo() {
return (
<ScrollArea className="h-40 w-64 rounded-md border p-4">
<div className="space-y-2">
{Array.from({ length: 20 }).map((_, i) => (
<div key={i} className="text-sm">
springs preset #{i + 1}
</div>
))}
</div>
</ScrollArea>
)
}bunx --bun @seamui/cli@latest add scroll-areaNotes
- The scrollbar fades in on
data-[hovering]anddata-[scrolling]and fades back out after a short delay. - Native scrolling is preserved (keyboard, wheel, touch) — the custom scrollbar is a visual layer over it, not a replacement.
Press feedback, reduced motion, and haptics follow the global policy — see Motion and Haptics.