Skip to content

AppBar 应用栏 ​

页面 / 工具区顶部的应用栏布局条(role="banner"):leading 区(汉堡钮 / 自定义内容)+ 标题 + 操作区 + 末端区 + overflow 收纳 + 滚动折叠 + 扩展区第二行。

基础用法 ​

heading 属性设置标题文案,slot="actions" 放操作按钮(oas-button 等),标题区为 flex: 1 支柱把操作区推到远端。

标题 + 操作区

导入新建项目

汉堡钮(menu-button) ​

menu-button 布尔属性显示 leading 汉堡钮,点击派发 oas-menu-toggle(宿主自行开合侧边抽屉);抽屉开合后回写 menu-open 布尔属性,汉堡钮的 aria-expanded 随之同步;menu-controls 指向宿主抽屉元素的 id(aria-controls)。

汉堡钮 + 菜单开合状态

点左侧汉堡钮,观察 aria-expanded 与事件反馈。

富标题 / leading / trailing 插槽 ​

slot="title" 富标题(有内容时覆盖 heading 属性文本);slot="leading" 在汉堡钮之后放自定义 leading 内容;slot="trailing" 在最末端放头像等(不参与 overflow 收纳)。

插槽组合

O 发布中心 Beta

overflow 溢出收纳 ​

slot="actions" 超出栏宽时,超宽操作项自动收进「···」弹层(ResizeObserver 驱动,窗口缩放实时重算);弹层内镜像项点击回派到原按钮。按钮的 aria-label 优先作为镜像项标签。

窄容器溢出收纳(缩放窗口观察重算)

刷新导出 CSV导出 Excel分享归档打印设置

定位形态(position) ​

position 控制定位形态:static(默认,随文档流)/ absolute / fixed(视口顶部,偏移走 --oas-app-bar-top 变量开口)/ floating(圆角悬浮 + 投影 + 四边留边)。演示页为避免遮挡内容用内联样式保持静态,实际场景直接用对应形态。

四种形态(演示均保持 static 定位)

投影(elevated / 滚动后投影) ​

elevated 布尔属性常显投影;未设置时内容滚动后(scrollY > 0)栏底自动出现投影,回到顶部移除。投影粗细走 --oas-app-bar-shadow 变量开口。

elevated 常显投影(右例滚动后自动投影)

滚动折叠(hide-on-scroll) ​

hide-on-scroll 布尔属性(悬浮形态 fixed / absolute / floating 下生效):页面向下滚动时应用栏 translateY 滑出视口、向上滚动滑回;滚动差 >4px 才判方向。隐藏是纯视觉收起(不加 aria-hidden),滚回即恢复。

fixed + hide-on-scroll(固定在导航栏下方,滚动本页试试)

长页滚动占位(向下滚动收起、向上滚动恢复)
操作

扩展区(extended) ​

slot="extended" 渲染第二行(大标题 / 搜索框等);extended-collapse-on-scroll 布尔属性启用后,滚动超过 8px 自动收起扩展区只留主行,回到阈值下展开(grid 行高过渡,prefers-reduced-motion 下停用)。

extended 大标题 + 滚动收起

数据分析

滚动本页:扩展区收起只留主行;回到顶部重新展开。

RTL ​

容器 dir="rtl" 下组件自动镜像:data-rtl 钩子 + 全逻辑属性布局(inset-inline / padding-inline),「···」弹层对齐 actions 远端。

RTL 镜像

تحديثتصديرمشاركةطباعة

API ​

oas-app-bar ​

属性 ​

属性说明类型默认值
elevated常显投影;未设置时由滚动单独控制(scrollY > 0 时 data-scrolled 出现投影,回到顶部移除)——
extended-collapse-on-scroll页面下滚时收起 extended 扩展区(回滚到顶恢复展开)boolean—
heading标题文本(属性通道;富内容改用 title 插槽,会被插槽覆盖)string—
hide-on-scroll页面下滚隐藏、上滚重现(transform 过渡,不重排;仅非 static 定位生效)boolean—
menu-button显示 leading 汉堡钮,点击派发 oas-menu-toggle(配合侧栏开合使用)boolean—
menu-controls汉堡钮 aria-controls 指向的关联元素 id(缺省无)——
menu-open汉堡钮展开态(受控):宿主开合侧栏后回写,按钮 aria-expanded 随之同步boolean—
position定位形态:static(默认,文档流)/ absolute / fixed / floating(悬浮圆角投影)stringstatic

事件 ​

事件说明
oas-menu-toggle汉堡钮点击时派发;宿主自行开合抽屉并回写 menu-open

插槽 ​

名称说明
actions右侧操作区;超宽自动收纳进「···」弹层并镜像回派原按钮
extended第二行扩展区(hide-on-scroll 或 extended-collapse-on-scroll 时滚动收起)
leading标题前置自定义区
title标题富内容通道(覆盖 heading 属性)
trailing最右侧尾部自定义区

CSS 变量 ​

CSS 变量说明默认值
--oas-app-bar-height—56px
--oas-app-bar-inset—var(--oas-space-3)
--oas-app-bar-shadow—var(--oas-shadow-md)
--oas-app-bar-top—0px
--oas-glass-blur—none
--oas-glass-refraction液态玻璃边缘折射滤镜(data-glass 生效,默认 none);局部停用覆盖为空值(--oas-glass-refraction: ;)——不得用 none(与 button 态的 brightness() 混排会使整条 filter 声明非法)none
--oas-glass-ring—transparent

基于 MIT OR Apache-2.0 双许可发布