---
id: "collapse"
title: "折叠面板"
category: "容器组件"
document_type: "component-specification"
spec_status: "local-current-draft"
element_ui: "2.15.6"
vue: "2.6.14"
page: "../index.html#spec-collapse"
source_data: "../component-data.json"
official_components: ["collapse", "collapse-item"]
template_components: []
scenario_count: 5
verification: "scenario-checklist-not-full-test-pass"
---

# 折叠面板

专题 `collapse` · 容器组件 · Element UI 2.15.6

## 适用范围与组件映射

公共色板及字体基线适用于整个运营后台。本库整理基础组件、组件状态和可复用的组合模式；本轮补齐表单整体验证、页面布局和导航组合；具体业务字段与跨页流程仍在业务场景中说明。专题验收清单包含接入要求，不表示当前示例已实现或已验证全部场景。

官方条目映射：`collapse`、`collapse-item`。

## 通用基线

- 组件库：Element UI **2.15.6**；运行样例 Vue **2.6.14**。
- 系统中文字体：macOS 优先苹方，Windows 通常微软雅黑；工程顺序固定为 `"PingFang SC", "Microsoft YaHei", sans-serif`。不要求安装或加载网络字体，兼容回退不是另一套可选样式。
- 后续仅采用经验证且固定版本的兼容 Element UI 2.x；Element Plus 属于独立迁移路线。
- 正文、数据值、输入及已选值：`14px / 400 / 21px`，`#303133`。
- 表头及组件分组标题：`14px / 600 / 21px`；弹窗标题：`16px / 600 / 24px`，均使用 `#303133`。
- 辅助说明：`12px / 400 / 18px`，`#595959`；错误、链接、状态、禁用与占位按各自语义处理。
- 适用组件的默认尺寸为 `small / 32px`；不得将这一高度机械应用于表格、文本域、浮层等全部组件。
- 规范正文与场景说明使用 `14px / 400 / 24px`、`#303133`，不降成灰蓝小字。
- 筛选文本输入占位统一“请输入”；未选择下拉统一“请选择”；默认全部的下拉显示“全部”。字段标签保留业务含义；日期保留开始/结束语义。
- 次级文字操作（查看更多、编辑、详情、数据中心、更多）：`12px / 400 / 18px`，`#3377BB`；保留点击热区。
- 本规范库的深色目录、蓝色展示区属于文档排版，不是业务组件颜色或业务导航规范。

## 本页用法与分类

默认用法：次要信息需要按组收起时，默认使用标准分隔并允许多组展开；必须直接比较的关键内容直接展示。

| 区分什么 | 本页内容 | 选用或触发条件 |
| --- | --- | --- |
| 视觉：三种外观 | 标准分隔、独立卡片、嵌入无边框改变内容组的边界组织。 | 连续分组用标准分隔；相对独立的内容单元用独立卡片；已在父卡片或弹窗内时用无边框，避免重复套边框。 |
| 用途：内容分组 | 折叠减少当前可见内容，不改变字段值。 | 次要或按需阅读内容才折叠；关键比较信息直接展示，收起不清除已有草稿。 |
| 行为：多开或单开 | 可多开允许同时阅读几组；手风琴限制一次展开一组。 | 前三种外观默认可多开；需要互斥阅读且不必同时比较时才用手风琴。最后一组只对照此行为，不是新增外观。 |
| 自动状态：展开与禁用 | 展开/收起来自操作；禁用来自是否允许展开；异步反馈来自请求。 | 箭头和内容同步；禁用项阻止展开，不用变色冒充另一外观。本页静态内容无异步请求，加载和失败仅在真实接入后出现。 |

使用边界：不把展开、收起、禁用、单开称为几种面板样式；折叠不代表选中或勾选，收起不清空字段。

## 组件规则

- **COLLAPSE-R01**：次要内容按组收起，默认使用标准分隔外观；独立内容单元用独立卡片，已在卡片或弹窗内的补充信息用嵌入无边框。默认允许多组展开；互斥阅读时才用手风琴单开，这是展开行为，不是第四种外观。关键对比信息直接展示。
- **COLLAPSE-R02**：标题是明确的展开按钮，箭头、aria-expanded与实际内容同步。制表键定位标题，回车键或空格键展开和收起；禁用标题不进入导航顺序，隐藏内容不接受键盘焦点。
- **COLLAPSE-R03**：折叠不代表清除值；长标题允许折行，折叠动画遵循减少动态偏好。
- **COLLAPSE-R04**：【公共用色】颜色仅从公共色值 引用：主色系 3 个基础色值、辅助功能色 3 个、中性色 10 个，共 16 个基础色值。角色可以多个，实际色值复用；不为每个组件、悬停 或不同字段再新增近似颜色。透明效果仅限遮罩 35% 与阴影 12%，从 外壳深色 派生。
- **COLLAPSE-R05**：【统一字体】统一系统中文字体：macOS 优先苹方（PingFang SC），Windows 通常使用微软雅黑（Microsoft YaHei）；工程顺序固定为 "PingFang SC", "Microsoft YaHei", sans-serif。使用设备已有字体，不要求安装或加载网络字体；最后一项仅作兼容回退，不是供页面作者任选的另一套样式。正文 14px/400/21px；表头与分组标题 14px/600/21px，弹窗标题 16px/600/24px；次级文字操作和辅助说明 12px/400/18px。正文与标题同用 #303133；不通过额外加粗或透明度改变正文轻重。
- **COLLAPSE-R06**：【叠加优先级】状态叠加规则：禁用阻断交互；输入类控件错误边框覆盖蓝色聚焦边框；输入框不叠加外圈或阴影，其他无边框操作保留键盘焦点提示；选中底覆盖悬停底；只读不等于禁用；加载不等于成功；业务启用/停用的文字结果不等于控件是否可点击。
- **COLLAPSE-R07**：【收起与展开】三种外观均为白底、标题正文深灰600。标准分隔使用分隔线，独立卡片使用边框灰和组间间距，嵌入无边框省去内部边框；展开只改变箭头和内容，不自动填选中浅蓝。
- **COLLAPSE-R08**：【悬停与焦点】可操作标题悬停浅灰背景，键盘焦点操作蓝轮廓；内部静态内容不变色。
- **COLLAPSE-R09**：【禁用】明确禁止展开的标题使用禁用灰且阻止触发；普通只读内容仍正文深灰。
- **COLLAPSE-R10**：【按需加载】仅异步展开时主题蓝加载图标；空内容空值灰，失败错误红短提示，面板整体不染红。
- **COLLAPSE-R11**：【组件边界】折叠只表示内容展开，不能当作选中；此专题没有分组勾选或半选，异步反馈仅在实际按需加载内容时适用。

## 场景与验收清单

以下为需核对的场景组；`[ ]` 不代表已经测试通过。

- [ ] **COLLAPSE-S01**：当前样例：标准分隔、独立卡片、嵌入无边框均可多开，包含备注草稿、长标题和不可展开分组；逐组检查展开/收起、禁用及键盘可达。
- [ ] **COLLAPSE-S02**：当前样例：手风琴采用相同标准分隔外观，只改变一次展开一组的行为；打开B时A收起，再打开A时草稿保留。额外标题操作、无内容和异步读取按实际业务接入后验收。
- [ ] **COLLAPSE-S03**：隐藏内容不进入Tab导航；收起保留字段值，减少动态效果时不依赖动画理解状态。
- [ ] **COLLAPSE-S04**：共用视觉验收：仅核对本组件实际适用的颜色与组合状态；无此能力标为不适用，不给静态内容添加输入错误、半选或按下状态。
- [ ] **COLLAPSE-S05**：共用文字验收：正文14px/400、次级操作12px/400、标题600；检查实际子元素与弹出层。输入焦点只改自身边框，按钮和链接保留键盘焦点轮廓。

### 专题验收重点

分别检查三种外观的鼠标与键盘展开、禁用项、收起后草稿保留及输入框退出制表键顺序；前三组可多开，手风琴对照一次只开一组。

## 当前示例模板

以下来自本专题的结构化示例，使用 Vue 2 模板语法。`v-model`、事件方法、数据列表等依赖 [components.js](../components.js)；完整样式文件及加载顺序见 [通用基线](FOUNDATIONS.md)。自定义组合标签的内部实现由下方依赖文件提供，不能仅复制标签作为完整组件。

```html
<collapse-variants>
</collapse-variants>
```

## 交付与使用边界

- 规范条款、示例代码与待验收场景分开理解；有示例不等于已覆盖所有样式、交互状态和使用场景。
- 业务接口、权限、时区、金额精度、数据规模等依赖应从实际项目读取，不使用演示值代替生产约定。
- 发生样式或文案变更时，同步专题数据、页面与 Markdown，避免规范和样例分离。

## 来源与关联

- 来源线索：本次补充。
- [打开本专题页面](../index.html#spec-collapse)
- [通用基线](FOUNDATIONS.md)
- [规范总索引](README.md)
- [结构化规范数据](../component-data.json)（记录 id：`collapse`）
- [原始历史样板](../original-20260621.html)
- [历史规范条目](../spec-notes.json)

自定义示例 `collapse-variants` 的实现：[container-variants.js](../container-variants.js)。

## 本组件颜色状态表

| 状态 / 条件 | 统一规则 |
| --- | --- |
| 收起与展开 | 三种外观均为白底、标题正文深灰600。标准分隔使用分隔线，独立卡片使用边框灰和组间间距，嵌入无边框省去内部边框；展开只改变箭头和内容，不自动填选中浅蓝。 |
| 悬停与焦点 | 可操作标题悬停浅灰背景，键盘焦点操作蓝轮廓；内部静态内容不变色。 |
| 禁用 | 明确禁止展开的标题使用禁用灰且阻止触发；普通只读内容仍正文深灰。 |
| 按需加载 | 仅异步展开时主题蓝加载图标；空内容空值灰，失败错误红短提示，面板整体不染红。 |

折叠只表示内容展开，不能当作选中；此专题没有分组勾选或半选，异步反馈仅在实际按需加载内容时适用。

[公共颜色与字体 token](../color-tokens.json) · [公共组件样式](../color-contract.css) · [系统字体合同（最后加载）](../font-contract.css)

## 业务落地场景

- [活动管理 · 编辑活动 · 字段分组](../../showcase/index.html?example=collapse#campaigns) · [场景文档](../../showcase/docs/campaigns.md)

[竞品组件拆解](../../reference-review/竞品组件反推规范.html) · [业务场景分类](../../业务场景分类清单.md)
