跳至正文

Toolbar

共用一个Tab停靠点、支持方向键导航的控件组。

浏览器
Chrome 123+Firefox 121+Safari 17.5+
层级
1
压缩后大小
2.04 kB
强制布局预算
0 ms
axe 预算
0
支持 SSR
是
公开契约
测试环境

交互示例

Toolbar

默认

API

Toolbar.Root

属性类型默认值说明
dir"ltr" | "rtl"—书写方向,会反转左、右方向键的行为。
loopbooleantrue方向键导航是否在第一项和最后一项之间循环。
orientation"horizontal" | "vertical" | "both""horizontal"指定哪些方向键用于在项目之间移动焦点,以及data-orientation的值。

Toolbar.Button

属性类型默认值说明
selectedboolean—按钮的切换状态:设置aria-pressed;为true时,还设置data-selected并使用主要填充样式。
childrenReactNode—按钮内容。
classNamestring—应用于button元素的类名。
disabledbooleanfalse禁用按钮,并将其移出游走焦点顺序。

Toolbar.Link

Toolbar.Separator

属性类型默认值说明
classNamestring—应用于<hr>元素的类名。
orientation"horizontal" | "vertical""vertical"在分隔线上设置aria-orientation和data-orientation。

Toolbar.ToggleGroup

属性类型默认值说明
id*string—确定性id和共享输入组名称的基础值。
type"single" | "multiple""single"允许按下一个还是多个切换按钮,据此选择radio或checkbox输入框。
items*readonly ToggleGroupItem[]—每项为{ value, label, disabled? }。
defaultValuestring | readonly string[] | undefined—首次渲染时按下的项。非受控,因此无JavaScript时仍可保持。
orientation"horizontal" | "vertical""horizontal"切换按钮的排列方向。
classNamestring—应用于组根元素的类名。

键盘

按键操作
Tab将焦点移入或移出控件
Enter / Space获得焦点时激活(按钮类控件)

无障碍

尽可能使用语义化HTML。可在交互示例中检查渲染的标记;仅在原生元素无法满足需求时添加ARIA。

样式钩子

data-disabled