数据与反馈@neumorphism-ui/scroll-area

Scroll Area

使用 overflow-auto 和原生 scrollbar,完整保留滚轮、触控、键盘以及浏览器无障碍行为。ScrollBar export 是为兼容 shadcn 组合方式而保留的隐藏 placeholder。

@neumorphism-ui/scroll-area
Registry JSON

预览

NVDA无障碍就绪
Dialog浮层就绪
Data table数据待审核
Slider输入就绪
Tooltip浮层就绪
Calendar复合计划中
Command复合计划中

安装

安装: scroll-areanpx shadcn@latest add @neumorphism-ui/scroll-area

CLI 会依次处理 npm 依赖、base token、utils 和组件源码。

首次使用此 Registry?请先完成 namespace 配置 。

用法

Import

Scroll Area import 代码
import {
  ScrollArea,
  ScrollBar,
} from "@/components/ui/scroll-area"

Example

Scroll Area 用法代码
<ScrollArea
  className="h-64 p-4"
  tabIndex={0}
  aria-label="最近动态"
>
  {activities.map((activity) => (
    <article key={activity.id}>{activity.title}</article>
  ))}
  <ScrollBar orientation="vertical" />
</ScrollArea>

API 参考

组件属性类型默认值说明
ScrollAreaclassNamestring—限制高度或宽度以形成 overflow 区域。
ScrollAreatabIndexnumber—当内部没有 focusable 元素时,提供键盘滚动入口。
ScrollAreaaria-label / aria-labelledbystring—当该区域可独立浏览时,为其内容提供名称。
ScrollBarorientation"horizontal" | "vertical""vertical"兼容性 placeholder 的方向数据属性。

无障碍

  • 01

    使用原生 overflow,不会拦截屏幕阅读器和触控滚动。

  • 02

    如果内部完全没有链接或按钮,可设置 tabIndex=0,让键盘用户进入该区域。

  • 03

    ScrollBar 是视觉隐藏的兼容性 placeholder,实际滚动由浏览器 scrollbar 负责。