Files
leptos-shadcn-ui/docs/components/api/scroll-area.md
Ubuntu 18c4ddcd05 drover: task-1767764907653950146
Task: Improve API documentation
2026-01-10 05:38:15 +00:00

1.6 KiB

Scroll Area Component API

A container with custom styled scrollbars.


Installation

# Cargo.toml
[dependencies]
shadcn-ui-leptos-scroll-area = "0.7"
use shadcn_ui_leptos_scroll_area::ScrollArea;

Component API

ScrollArea

Prop Type Default Description
class MaybeProp<String> None Additional CSS classes
children Option<Children> None Scrollable content

Usage Examples

Basic Scroll Area

use leptos::prelude::*;
use shadcn_ui_leptos_scroll_area::ScrollArea;

#[component]
pub fn MyComponent() -> impl IntoView {
    view! {
        <ScrollArea class="h-72 w-48 rounded-md border">
            <div class="p-4">
                <p>"Long content that scrolls..."</p>
            </div>
        </ScrollArea>
    }
}

CSS Classes

.scroll-area {
    overflow-auto
}

.scroll-area::-webkit-scrollbar {
    width: 8px
}

.scroll-area::-webkit-scrollbar-track {
    background: transparent
}

.scroll-area::-webkit-scrollbar-thumb {
    background-color: hsl(var(--muted))
    border-radius: 4px
}

Accessibility

  • Standard scrolling behavior maintained
  • Keyboard navigation supported

TypeScript API

interface ScrollAreaProps {
  className?: string;
  children?: React.ReactNode;
}

export const ScrollArea: React.FC<ScrollAreaProps>;

Source: packages/leptos/scroll-area/src/default.rs