面包屑是界面中的一种辅助导航,告诉用户当前页面所在的位置及页面层级关系,方便用户快速返回上一级或去往其他层级的页面。

适用范围

何时使用:

  • 页面层级结构 ≥2 级时使用,允许从当前位置通过点击面包屑路径返回到任一上级;

何时不使用:

  • 一级页面,如首页、各模块的根目录;
  • 如果需要引导用户执行多步骤流程,请改用 Step 步骤

通用原则:

  • 面包屑始终被视为辅助导航,并且永远不应完全替代主要导航。
  • 面包屑记录的是页面的结果逻辑,而非用户的操作顺序;
  • 当前页面即为面包屑的最后一级;
  • 避免将非页面级的内容写到面包屑中,比如 Tabs 的切换、Trees 的层级等等;
  • 允许从当前位置返回到层次结构中任一父级;
  • 面包屑的每一个层级允许同级间平行切换;

构成解析

结构

image.png
面包屑有路径与分隔符组成:

  • 路径 Path:

    • 显示当前页面之上的页面路径;
    • 完整路径超过 5 层时省略中间路径,只显示第一级和最后两级,中间部分用「···」代替,点击后查看所有路径,详见下文的查看省略路径
    • 允许为路径添加图标,尺寸16×16px,满足个性化的定制需求,但默认不加;
    • 不允许折行,但每一级的名称允许出现「…」;
    • 当前页文字颜色变量为 $wh-color-text-regular ,非当前页文字颜色变量为 $wh-color-text-secondary
  • 分隔符 Separator:

    • 用以分隔每级页面,允许替换为其他具有表达分割意思的元素,如右箭头,默认分隔符为“/”;

间距

image.png

交互行为

返回任一父级

image.png

  • 当前页不可点击;
  • 除当前页外,任意路径均可点击,点击后直接前往目标页面;
  • 通过点击任意路径节点,即可快速返回父级页面;

页面跳转逻辑

image.png
系统间页面跳转存在着两种跳转逻辑:

  • 线性跳转,用户从 A 页面一层层的进入到它的子页面,用户通过点击面包屑路径返回到任一上级,即如 A3 能返回至 A2 或A1 或 A;
  • 平行跳转,不同模块之间的页面存在关联,用户能从 A 页面的子页面跳转到 B 页面的子页面,比如用户从 A 模块的 A1 页面跳到 B 模块的 B1 页面后,此时用户可通过点击面包屑的路径返回到 B,点击页头标题左侧的返回图标,可返回到 A1;

查看省略路径

image.png

  • 当中间路径被折叠时,点击「…」查看所有被折叠的路径,点击之后立即跳转至目标页面;

布局

image.png

  • 面包屑通常位于全局导航之下,页面或模块内容之上,并与内容左对齐;
  • 当用户浏览不同页面时,面包屑的位置不应移动;