Layout

Scroll Area

A framed, keyboard-focusable panel that scrolls long content with the browser's own thin scrollbars.

Class nameTypeDescription
scroll-areaplf:scroll-areaComponentThe frame around the scrolling panel
scroll-area-viewportplf:scroll-area-viewportPartThe focusable region that scrolls
scroll-area-contentplf:scroll-area-contentPartThe padded content
scroll-area-rowplf:scroll-area-rowPartLines items up in one row
scroll-area-horizontalplf:scroll-area-horizontalDirectionScrolls sideways

Default

Give the viewport role="region", tabindex="0" and a name, so keyboard users can focus it and scroll with the arrow keys.

Recent activity

  • Monthly report is ready

    Revenue and activity for October.

    Today, 09:42

  • Olivia joined the workspace

    A new member has accepted your invitation.

    Today, 08:30

  • Invoice paid

    The October subscription payment is complete.

    Yesterday, 16:15

  • Design project updated

    Sofia added new files to the project.

    Yesterday, 14:20

  • Weekly digest sent

    Your team received the latest workspace updates.

    Yesterday, 09:00

  • Review completed

    Jackson approved the latest project draft.

    Oct 3, 11:05

  • New workspace created

    The product team has a place for its next release.

    Oct 2, 15:40

  • Report scheduled

    Your next summary will arrive on Monday.

    Oct 1, 10:10

Horizontal

Give each item in the row a fixed width, and keep a parent grid or flex track shrinkable (minmax(0, 1fr) or min-inline-size: 0) so the row scrolls here instead of the page.

Explore your workspace

Analytics

Follow revenue, activity and workspace trends.

Updated today

Customers

Keep customer records and account details together.

126 active accounts

Billing

Review invoices, payments and reporting periods.

Monthly billing

Projects

Organize ongoing work and useful resources.

8 active projects

Workspace

Find the pages and tools your team uses most.

Team workspace

Resources

Discover guides and reusable building blocks.

Ready to explore

React

ScrollArea from @pelatform/react renders this frame, and each part is a component of its own; it needs no script.

Prop Values Default
orientation vertical, horizontal, which scrolls sideways vertical
Part Element
ScrollAreaViewport A div with scroll-area-viewport, a region you reach with Tab (role="region", tabIndex={0}), named by your aria-labelledby or aria-label
ScrollAreaContent A div with scroll-area-content
ScrollAreaRow A div with scroll-area-row, the row of a horizontal Scroll Area

The other props are the element’s own, className and ref included.

Variable Default
--plf-scroll-area-height 20rem (320px); auto with scroll-area-horizontal, where a height scrolls both ways
--plf-scroll-area-padding Space 4, 1rem (16px)
--plf-scroll-area-gap Space 4, 1rem (16px), between row items
--plf-scroll-area-border Subtle border
--plf-scroll-area-radius --plf-radius-lg, 0.5rem (8px)
--plf-scroll-area-bg Transparent
--plf-scroll-area-thumb-bg Muted text at 70%
--plf-scroll-area-thumb-hover-bg Muted text, while hovered or focused
--plf-scroll-area-track-bg Transparent
--plf-scroll-area-scrollbar-width thin; auto for the platform width

Built with Pelatform UIv0.1.0

Components

Getting started

Foundations

Components

Actions

Data display

Navigation

Feedback

Data input

Layout

Advanced

Integrations

Blocks

Application

Authentication

Icons