Breadcrumb
从网站根目录到当前页面的链接路径。
- 浏览器
- Chrome 123+Firefox 121+Safari 17.5+
- 层级
- 0
- 压缩后大小
- 1.12 kB
- 强制布局预算
- 0 ms
- axe 预算
- 0
- 支持 SSR
- 是
- 基于
- elements/details
- 公开契约
- 测试环境
交互示例
Breadcrumb
API
Breadcrumb.Root
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
aria-label | string | "Breadcrumb" | 导航地标的无障碍名称。 |
render | ReactElement | ((props, state) => ReactElement) | — | 替换渲染元素,同时保留行为和无障碍连接关系。 |
Breadcrumb.List
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
children | ReactNode | — | 手动编写的面包屑导航项,可替代items。 |
items | BreadcrumbItemData[] | — | 数据驱动的条目,每项包含key、label及可选的href和current标记;设置maxItems时必需。 |
itemsAfterCollapse | number | 1 | 路径折叠时,末尾保留可见的项目数。 |
itemsBeforeCollapse | number | 1 | 路径折叠时,开头保留可见的项目数。 |
maxItems | number | — | 超过此项目数时,将路径中间部分折叠到可展开的省略号之后。 |
separator | ReactNode | — | 从items构建列表时,在项目之间渲染的内容。 |
render | ReactElement | ((props, state) => ReactElement) | — | 替换渲染元素,同时保留行为和无障碍连接关系。 |
Breadcrumb.Item
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
children | ReactNode | — | 单个面包屑导航列表项的内容。 |
render | ReactElement | ((props, state) => ReactElement) | — | 替换渲染元素,同时保留行为和无障碍连接关系。 |
Breadcrumb.Link
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
children | ReactNode | — | 链接的标签。 |
current | boolean | false | 将此条目标为当前页,并设置aria-current。 |
href | string | — | 链接目标;省略时渲染不可导航的条目。 |
render | ReactElement | ((props, state) => ReactElement) | — | 替换渲染元素,同时保留行为和无障碍连接关系。 |
Breadcrumb.Separator
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
children | ReactNode | "/" | 分隔线内容,对辅助技术隐藏。 |
render | ReactElement | ((props, state) => ReactElement) | — | 替换渲染元素,同时保留行为和无障碍连接关系。 |
Breadcrumb.Ellipsis
| 属性 | 类型 | 默认值 | 说明 |
|---|
键盘
| 按键 | 操作 |
|---|---|
| Tab | 将焦点移入或移出控件 |
| Enter / Space | 获得焦点时激活(按钮类控件) |
无障碍
尽可能使用语义化HTML。可在交互示例中检查渲染的标记;仅在原生元素无法满足需求时添加ARIA。
样式钩子
data-disabled