跳到主要内容
前端术语库

顶部导航栏

Navbar

UI 组件也叫:导航栏、顶栏、Header、App Bar、页头

一句话:固定在页面最上方的一条横栏,放网站标志、主要栏目链接,以及搜索、登录等全局入口。

详细解释

顶部导航栏横跨页面顶端,左边通常是 Logo,中间或左侧是几个主栏目,右边放搜索、消息、头像等全局操作。它在每个页面都出现,让用户随时知道自己在哪个网站、能去哪些地方。栏目在 7 个以内最合适,多了就会挤不下。

它和下拉菜单经常一起出现,但作用不同:导航栏是一直摆在页面上的常驻入口,下拉菜单是点击或悬停后才临时弹出的一组选项,用完就收起。导航栏里某个栏目下还有子页面时,才在它下面挂一个下拉菜单。

小屏幕上导航栏一般收成一个「汉堡」图标,点开后再展开栏目。页面较长时常配合吸顶,滚动时始终可见。

示例

灰度线框示意,只表达结构,不代表具体视觉风格。

怎么跟 AI 说

可以直接贴给 Cursor、Claude Code 等工具,把里面的业务内容换成你自己的。

页面顶部做一个高 64px 的白色导航栏,滚动时吸顶。左侧放 Logo,接着是「首页、产品、价格、文档」四个栏目,当前栏目加粗并带下划线;右侧放搜索框和用户头像,点击头像弹出下拉菜单。宽度小于 768px 时,栏目收进汉堡菜单。

结构与适用场景

结构描述

由横向容器、左侧 Logo、栏目链接组和右侧操作区(搜索、通知、头像或登录按钮)组成,小屏时多一个汉堡菜单按钮。

适用场景

  • 网站或应用的一级栏目不超过 7 个,需要在每个页面都能快速切换时
  • 官网、博客、电商首页这类以浏览内容为主、横向空间充足的页面
  • 需要一个固定位置放搜索、消息通知、个人头像等全局入口时

不适用场景

  • 一级栏目超过 8 个或有多层子菜单的后台系统,横向放不下,应改用侧边菜单
  • 只是在某个页面内部切换几块内容,这种情况用标签页
  • 点击按钮后临时出现的几个操作选项,这是下拉菜单而不是导航栏

常见坏用法

  • 把十几个栏目全部横排塞进导航栏,文字挤成一团,小屏上直接换行溢出
  • 当前所在栏目没有任何高亮,用户看不出自己在哪个页面
  • 顶部导航栏和侧边菜单放了完全相同的一组链接,重复占用空间

识别特征

  • 贴着页面顶端、横跨整个宽度的一条横栏
  • 左侧有 Logo,右侧有头像、搜索框或登录按钮
  • 中间一排水平排列的栏目文字,其中一个处于高亮
  • 底部常有细边框或阴影,与下方内容区分开

DOM 线索

插件本地识别时匹配的 CSS 选择器(标签、ARIA role、常见组件库 class)。

  • header nav
  • body > header
  • [role="banner"]
  • .navbar
  • .ant-layout-header
  • .ant-menu-horizontal
  • .el-header
  • ul.el-menu--horizontal
  • [class*="MuiAppBar-root"]
  • .arco-layout-header
  • .arco-menu-horizontal
  • .t-head-menu
  • .n-layout-header
  • .n-menu--horizontal
  • [data-slot="navigation-menu"]