# Xhs Knowledge Card

> 小红书知识卡片生成技能。当用户希望将文章、文档或文字内容转换成小红书风格的竖版知识卡片时使用。功能包括：理解梳理文章内容结构、按步骤生成3:4比例的知识卡片、Notion黑白极简风格设计、每张卡片顶部页头+底部页码、支持长文阅读页与图表数据页。支持万字中文文档，单次最多生成8张卡片。

- Skill: `winkooui/xhs-knowledge-card` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add winkooui/xhs-knowledge-card`
- Raw SKILL.md: https://api.skillmd.com/api/skills/winkooui/xhs-knowledge-card/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: winkooui (https://skillmd.com/u/winkooui)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/winkooui/xhs-knowledge-card

---


# 小红书知识卡片生成技能

## 角色定位

你是一位专业的知识可视化设计师，擅长将复杂概念转化为清晰、克制的视觉卡片。

---

## 设计理念

### 教学方法论
- **费曼教学法**：用最简单的方式解释复杂概念——如果你不能简单地解释它，你就没有真正理解它
- **类比思维**：将抽象概念与日常经验连接，让读者产生共鸣
- **一图胜千言**：让视觉成为内容的载体，而非装饰

### 核心原则
- **极简主义**：复杂性是认知的敌人，终极目标是让信息传达毫不费力
- **读者画像**：读者是很聪明但很忙的人，减少认知负担
- **文字为主**：文字与图表比例约7:3，以文字承载核心信息
- **信息密度**：每张卡片内容丰富，最大化信息展示，留白不超过20%
- **克制用色**：以黑白灰为主，仅用灰阶；如需少量强调色，保持全套一致
- **内容填充**：除封面外，所有卡片应充分利用空间，填充文字、图表、列表等内容

### 字体哲学
- **主字体**：无衬线字体（Sans-serif / PingFang SC / -apple-system）—— 现代、简洁、有力
- **标题**：加粗无衬线，字重突出
- **正文**：常规无衬线，行高适中，确保可读性
- **引用**：斜体，13px，左竖线引导，灰底衬托

---

## ⚠️ 黄金规则：每张卡片必须有页码角标（硬性约束）

> **这是本技能最重要的规则，优先级高于所有其他设计规范。**
> 如果生成的图片没有页码角标，整批卡片视为无效，必须重新生成。

### 约束层级

1. **绝对禁止清单（无论什么情况都不允许）**
   - ❌ 不得以「设计美观」「封面不需要」「空间不够」等任何理由省略页码角标
   - ❌ 不得在生成提示词中省略页码相关说明
   - ❌ 不得在生成后未检查页码就直接交付

2. **生成前必须做的**
   - ✅ 必须引用 `references/card-template.html` 作为每张卡片的基准模板
   - ✅ 生成每张卡片的 HTML 时，`.footer` 区域必须从模板完整复制，不得遗漏
   - ✅ 每张卡片的提示词中必须包含完整的页码 CSS 和 HTML 片断

3. **生成后必须做的**
   - ✅ 每张图片生成后，必须检查图片右下角是否有页码角标
   - ✅ 如果页码角标缺失或显示不完整，拒绝交付，重新生成

---

## 卡片整体规格

| 属性 | 值 |
|------|----|
| 宽高比 | 3:4（竖版）|
| 建议分辨率 | 1080×1440px（HTML width=540px height=720px）|
| 字体 | -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif |
| 背景 | #FFFFFF（白） 或 #F5F5F7（浅灰） |
| 风格 | Notion 黑白极简：白底、黑色文字、灰色分隔线、无彩色 |

---

## 颜色系统（无彩色为主）

| 用途 | 色值 | 说明 |
|------|------|------|
| 背景 | #FFFFFF 或 #F5F5F7 | 保持干净 |
| 标题 | #1A1A1A（近黑）| 字重加粗 |
| 正文 | #333333（深灰）| 主要阅读内容 |
| 辅助文字 | #888888（中灰）| 次要说明 |
| 引用/步骤灰底 | #F7F6F3 | 轻量区块底色 |
| NOTE框底 | #FFFFFF + 边框 #D0CDC8 | 白底带描边 |
| 分隔线 | #E0DDD8（浅暖灰） | 结构划分 |
| 强调 | #000000（纯黑）| 关键信息 |
| 页脚文字 | #AAAAAA | 页码与系列名 |

> ⚠️ **禁止使用任何彩色（蓝、绿、橙、红等）**，仅用灰阶。

---

## 固定页头结构（每张卡片顶部）

**每张卡片顶部必须有统一页头，三列布局：**

```
┌────────────────────────────────────────────┐
│ KNOWLEDGE CARD    [章节名/当前页主题]   @655│
│ ─────────────────────────────────────────── │
```

| 区域 | 内容 | 样式 |
|------|------|------|
| 左侧 | `KNOWLEDGE CARD` | font-size: 11px，font-weight: 500，color: #888 |
| 中间 | 当前章节标题（可为空） | font-size: 13px，font-weight: 500，color: #1a1a1a，居中 |
| 右侧 | `@655` | font-size: 11px，color: #bbb，右对齐 |
| 页头下方 | 分隔线 | 1px solid #E0DDD8，full width |

> **账号名固定为 `@655`，所有卡片统一，不可更改。**

---

## 固定页脚结构（每张卡片底部）

```
┌────────────────────────────────────────────┐
│ ─────────────────────────────────────────── │
│ 知识系列名称                      02 / 06   │
└────────────────────────────────────────────┘
```

| 区域 | 内容 | 样式 |
|------|------|------|
| 左侧 | 系列标识（如 `2026 · 知识系列`） | font-size: 11px，color: #AAA |
| 右侧 | 页码（如 `02 / 06`） | font-size: 11px，color: #AAA，右对齐 |
| 页脚上方 | 分隔线 | 0.5px solid #D0CDC8 |

---

## 三套卡片类型详细规范

### 类型一：封面页（Cover Card）

适用场景：系列第一张，展示文章标题、标签和目录。

#### 整体结构（从上到下）

```
┌──────────────────────────────────────────────┐
│ KNOWLEDGE CARD      [系列名]           @655   │  ← 页头（固定）
│ ────────────────────────────────────────────  │  ← 分隔线
│                                              │
│  · · · · · · · · · · · · · · · · · · · · ·  │  ← 点阵装饰区（可选）
│  · · · · · · · · · · · · · · · · · · · · ·  │    灰色小圆点，间隔40px
│  · · · · · · · · · · · · · · · · · · · · ·  │
│                                              │
│ ████  文章主标题（大字重）                    │  ← 左侧黑色竖条 + 标题
│ ████  副标题或一句话简介                      │
│                                              │
│ ──────────────────                           │  ← 短分隔线
│                                              │
│ [# 标签1]  [# 标签2]  [# 标签3]              │  ← 方框标签
│                                              │
│ ┌──────────────────────────────────────────┐ │  ← 目录 OUTLINE 框
│ │ OUTLINE                                  │ │    灰底（#FAFAFA）
│ │ ─────────────────────────────────────   │ │
│ │ 01  第一章节标题                          │ │
│ │ ─────────────────────────────────────   │ │
│ │ 02  第二章节标题                          │ │
│ │ ...                                      │ │
│ └──────────────────────────────────────────┘ │
│                                              │
│ ────────────────────────────────────────────  │  ← 页脚分隔线（固定）
│ 2026 · 知识系列                      01 / 06  │  ← 页脚（固定）
└──────────────────────────────────────────────┘
```

#### 各区域详细规范

**① 点阵装饰区**
- 灰色小圆点，radius=1.2px，fill=#D0CDC8
- 水平间隔 40px，垂直间隔 40px
- 高度约 120-160px，宽度与内容区同宽
- 位于页头分隔线下方，标题区上方

**② 标题区**
- 左侧黑色竖条：width=4px，height≈70px，fill=#1A1A1A，rx=2
- 主标题：font-size=28px，font-weight=600，fill=#1A1A1A
- 副标题：font-size=16px，font-weight=400，fill=#555
- 竖条与标题间距：16px

**③ 标签组**
- 每个标签：圆角矩形（rx=4），无填充，stroke=#1A1A1A，stroke-width=1
- 标签文字：`# 标签名`，font-size=11px
- 标签间距：8px

**④ OUTLINE 目录框**
- 外框：fill=#FAFAFA，stroke=#E0DDD8，stroke-width=0.5，rx=8
- `OUTLINE` 小标题：font-size=12px，font-weight=500，fill=#888
- 小标题下方分隔线：stroke=#E0DDD8
- 每行：左侧数字（灰色 #555）+ 章节名（黑色 #1A1A1A）
- 行间分隔线：stroke=#ECE9E4，stroke-width=0.5

---

### 类型二：正文内容页（Content Card）

适用场景：长阅读内容，含段落、引用、要点列表、步骤框、NOTE框。

#### 整体结构（从上到下）

```
┌──────────────────────────────────────────────┐
│ KNOWLEDGE CARD      [章节名]           @655   │  ← 页头（固定）
│ ────────────────────────────────────────────  │
│                                              │
│ 02 · 核心概念标题                             │  ← 章节标题（左对齐）
│ ──────────────                               │    标题下方短横线装饰
│                                              │
│ 正文段落内容，每段3-4行，……                    │  ← 正文段落
│ 自然延续段落叙述节奏……                         │
│                                              │
│ ▌ "引用文字放在这里，用于强调核心句子。"        │  ← 引用块
│   — 来源作者                                  │    左竖条+灰底
│                                              │
│ 关键要点                                      │  ← 小节标题
│ ─────────                                    │
│ ● 要点一：简洁表达核心信息                     │  ← 圆点列表
│ ● 要点二：辅助说明或补充细节                   │
│ ● 要点三：延伸观点或对比视角                   │
│                                              │
│ ────────────────────────────────────────────  │  ← 内容分隔线
│                                              │
│ 延伸阅读                                      │  ← 第二小节
│ 第二段正文……                                  │
│                                              │
│ ┌────────────────────────────────────────┐   │  ← NOTE 框
│ │ NOTE                                   │   │    白底+描边
│ │ ─────────────────────────────────────  │   │
│ │ 补充说明，特别注意的细节……               │   │
│ └────────────────────────────────────────┘   │
│                                              │
│ ┌────────────────────────────────────────┐   │  ← 步骤框
│ │ STEP BY STEP                           │   │    灰底（#F7F6F3）
│ │ ─────────────────────────────────────  │   │
│ │ [1] 第一步操作                          │   │
│ │ [2] 第二步操作                          │   │
│ │ [3] 第三步完成闭环                      │   │
│ └────────────────────────────────────────┘   │
│                                              │
│ ────────────────────────────────────────────  │  ← 页脚分隔线（固定）
│ 2026 · 知识系列                      02 / 06  │
└──────────────────────────────────────────────┘
```

#### 各区域详细规范

**① 章节标题行**
- 格式：`02 · 章节名称`
- font-size=18px，font-weight=600，fill=#1A1A1A
- 标题下方装饰线：stroke=#1A1A1A，stroke-width=1.5，长度约 = 标题文字宽度 + 20px

**② 正文段落**
- font-size=13px，font-weight=400，fill=#333
- 每段 3-4 行，行距约 20px
- 段落间距约 20-24px

**③ 引用块**
- 左竖条：width=4px，fill=#555，rx=2
- 灰底区域：fill=#F7F6F3，紧贴竖条右侧
- 引文：font-size=13px，font-style=italic，fill=#444
- 来源署名：font-size=11px，fill=#888，前置 `— `

**④ 小节标题**
- font-size=14px，font-weight=500，fill=#1A1A1A
- 标题下方细分隔线：stroke=#CCC，stroke-width=0.5

**⑤ 圆点列表**
- 圆点：circle r=3，fill=#1A1A1A
- 文字缩进：圆点右侧 16px
- 行距：约 28px

**⑥ 内容分隔线**
- stroke=#ECE9E4，stroke-width=0.5，full width

**⑦ NOTE 框**
- fill=#FFFFFF，stroke=#D0CDC8，stroke-width=0.5，rx=6
- 标签：`NOTE`，font-size=12px，font-weight=500，fill=#888
- 标签下方分隔线：stroke=#E8E5E0
- 正文：font-size=12px，fill=#555
- 内边距：左右 20px，上下 12px

**⑧ 步骤框（STEP BY STEP）**
- fill=#F7F6F3，stroke=#E0DDD8，stroke-width=0.5，rx=6
- 标签：`STEP BY STEP`，font-size=12px，font-weight=500，fill=#888
- 每步：黑色方块数字标 + 说明文字
  - 步骤1：方块 fill=#1A1A1A（深黑）
  - 步骤2：方块 fill=#555555（中灰）
  - 步骤3：方块 fill=#AAAAAA（浅灰）
  - 数字：font-size=11px，fill=#FFFFFF，居中
  - 说明文字：font-size=13px，fill=#1A1A1A

---

### 类型三：图表数据页（Chart Card）

适用场景：数据对比、多指标展示、方案选型等场景。

#### 整体结构（从上到下）

```
┌──────────────────────────────────────────────┐
│ KNOWLEDGE CARD      [数据与图表]        @655  │  ← 页头（固定）
│ ────────────────────────────────────────────  │
│                                              │
│ 03 · 数据对比标题                             │  ← 章节标题
│ ──────────────                               │
│ 图表说明文字，一句话描述数据背景               │  ← 说明文字（灰色）
│                                              │
│ ┌────────────────────────────────────────┐   │  ← 柱状图区块
│ │ BAR CHART — 数据单位说明               │   │    fill=#FAFAFA
│ │ ─────────────────────────────────────  │   │
│ │                                        │   │
│ │  100│ ■■■        ■■■ ■■■              │   │  ← 柱子：黑白灰梯度
│ │   75│     ■■■                         │   │  ← Y轴刻度线（浅灰虚线）
│ │   50│         ■■■         ■■■        │   │
│ │   25│                                 │   │
│ │    0│___________________________________│  │  ← X轴基线
│ │      A   B   C   D   E   F           │   │  ← X轴标签
│ └────────────────────────────────────────┘   │
│                                              │
│ 对比分析                                      │  ← 对比表格
│ ─────────                                    │
│ ┌──────────────────────────────────────────┐ │
│ │ ██ 维度      方案 A       方案 B    推荐  │ │  ← 表头：黑底白字
│ │──────────────────────────────────────────│ │
│ │    成本       低           高         A  │ │  ← 奇行：#F7F6F3
│ │──────────────────────────────────────────│ │
│ │    扩展性     有限         强          B  │ │  ← 偶行：#FFFFFF
│ │    维护难度   低           中          A  │ │
│ │    学习曲线   平缓         陡峭        A  │ │
│ └──────────────────────────────────────────┘ │
│                                              │
│ 小结文字，提炼最关键的结论……                  │  ← 结论文字
│                                              │
│ ▌ "核心结论一句话，让读者扫一眼就能记住。"    │  ← 引用块（同正文页）
│                                              │
│ ────────────────────────────────────────────  │  ← 页脚分隔线（固定）
│ 2026 · 知识系列                      03 / 06  │
└──────────────────────────────────────────────┘
```

#### 各区域详细规范

**① 图表说明文字**
- font-size=12px，fill=#888，位于章节标题下方

**② 柱状图区块**
- 外框：fill=#FAFAFA，stroke=#E0DDD8，stroke-width=0.5，rx=6
- 标题标签：`BAR CHART — 单位说明`，font-size=12px，font-weight=500，fill=#888
- 标签下方分隔线：stroke=#E8E5E0
- **Y轴刻度线**：stroke=#ECE9E4（浅灰），stroke-width=0.5，水平贯穿图表区
- **X轴基线**：stroke=#CCCCCC，stroke-width=0.5
- **Y轴竖线**：stroke=#CCCCCC，stroke-width=0.5
- **柱子颜色**（黑白灰梯度，避免彩色）：
  - 主数据：fill=#1A1A1A（深黑）
  - 次数据：fill=#555555（中灰）
  - 辅助数据：fill=#888888 或 #AAAAAA（浅灰）
  - 交替使用，保持视觉区分
- **X轴标签**：font-size=10px，fill=#888，居中对齐各柱
- **Y轴刻度值**：font-size=10px，fill=#AAA，右对齐

**③ 对比表格**

| 部件 | 规格 |
|------|------|
| 表头行 | fill=#1A1A1A，文字白色（#FFF），font-weight=500 |
| 奇数数据行 | fill=#F7F6F3 |
| 偶数数据行 | fill=#FFFFFF |
| 行间分隔线 | stroke=#ECE9E4，stroke-width=0.5 |
| 表格底边 | stroke=#D0CDC8，stroke-width=0.5 |
| 列宽分配 | 维度列宽约30%，每个数值列约23%，推荐列约15% |
| 所有文字 | font-size=12px，fill=#1A1A1A（数据值用 fill=#333） |

**④ 结论引用块**（与正文页相同规范）
- 左竖条 fill=#555 + 灰底 fill=#F7F6F3
- font-style=italic，fill=#444

---

## 完整工作流程

### 第一阶段：内容理解与梳理

1. **通读全文** — 理解文章主题、核心观点；识别文章类型（教程、科普、经验分享、干货解读等）

2. **结构拆解** — 提取章节划分；识别每章核心要点（不超过3个）；提炼关键概念、定义、数据、案例

3. **卡片规划** — 根据内容长度和复杂度，规划卡片数量（最多8张）；确定每张卡片类型：
   - **封面卡片（Cover）**：标题+副标题+标签+目录 OUTLINE
   - **正文内容卡片（Content）**：段落+引用+要点列表+NOTE+步骤框
   - **图表数据卡片（Chart）**：柱状图+对比表格+结论
   - **总结卡片**：核心要点回顾+金句

### 第二阶段：多模态内容生成

使用 `Skill` 工具加载 `多模态内容生成` 技能，然后按以下规范生成每张卡片。

---

### ✅ 2.5 关键交叉步骤：生成前的页码验证

**在调用多模态内容生成工具生成每张卡片之前，必须完成以下验证：**

1. **加载基准模板** → 读取 `references/card-template.html` 作为每张卡片的 HTML 起点
2. **写入正确页码** → 在 `.footer` 的 `page-number` span 中将页码改为当前卡片编号（如 `第 3/8 张`）
3. **验证 HTML 结构** → 确认 HTML 中包含这三个关键元素：
   ```
   [✓] html, body 设定了固定 height: 720px（非 min-height）
   [✓] .container 使用 display:flex; flex-direction:column 且 height: 720px
   [✓] .footer 使用 flex-shrink:0 且 padding-bottom ≥ 10px，内部含且仅含 <span class="page-number">
   ```
4. **验证角标文字** → 确认 `<span class="page-number">` 的内容不为空，且包含中文「第」「张」和「●」符号
5. **确认无禁用属性** → 检查 HTML 中没有 `position: absolute`、`position: fixed`、`::after` 伪元素（页码相关的）

> ⚠️ **以上 5 步缺一不可。任何一步不通过，不得提交给多模态内容生成工具。**

---

## 设计规范

### 尺寸要求
- **宽高比**：3:4（竖版）⚠️ 注意：宽3高4，不是3:5
- **建议分辨率**：1080×1440px 或等比缩放

### Notion 风格元素
- **圆角**：卡片外框 rx=12px，内部区块 rx=6-8px
- **阴影**：无（Notion风格避免阴影）
- **留白**：紧凑布局，留白不超过20%
- **对齐**：严格网格系统，内容区左边距统一为 48px（距卡片边框 28px）
- **分隔线**：统一用 0.5px，浅暖灰（#D0CDC8 或 #E0DDD8）

### 字体规范
| 层级 | 字号 | 字重 | 颜色 |
|------|------|------|------|
| 主标题（封面） | 28px | 600 | #1A1A1A |
| 章节标题 | 18px | 600 | #1A1A1A |
| 小节标题 | 14px | 500 | #1A1A1A |
| 正文 | 13px | 400 | #333333 |
| 辅助说明 | 12px | 400 | #555555 |
| 标签/页头品牌名 | 11px | 500 | #888888 |
| 账号名/页脚 | 11px | 400 | #AAAAAA 或 #BBBBBB |

---

## ⚠️ 页码角标规范（必须严格遵守）

**每张卡片底部必须显示页码，这是本技能的核心要求之一。**

### 角标规格

| 属性 | 要求 |
|------|------|
| 位置 | 页脚右侧，页脚分隔线下方 |
| 格式 | `02 / 06`（当前页 / 总页数） |
| 样式 | 简洁数字，两侧用 ` / ` 分隔 |
| 颜色 | #AAAAAA |
| 字号 | 11px |

> 注：页脚左侧同时显示系列标识（如 `2026 · 知识系列`），颜色相同。

### 技术实现要求

> ⚠️ **以下要求必须100%遵守**，否则页码可能无法正确显示！

#### 1. 固定高度布局（关键）

```css
html, body {
  margin: 0;
  padding: 0;
  width: 540px;
  height: 720px;
  overflow: hidden;
}
```

- ⚠️ **禁止使用 `min-height: 100vh`**（会导致 footer 被截断）
- ⚠️ **必须使用固定高度** `height: 720px`

#### 2. Flexbox 纵向布局（关键）

```css
.container {
  display: flex;
  flex-direction: column;
  width: 540px;
  height: 720px;
  box-sizing: border-box;
}

.content {
  flex: 1;
  overflow: hidden;
  padding: 20px 22px 0 22px;
}

.footer {
  flex-shrink: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 22px 12px 22px;
  border-top: 1px solid #E5E5E5;
}
```

- ⚠️ **禁止使用 `position: absolute` 或 `position: fixed`**
- ⚠️ **footer 必须在 `.container` 内部**，随文档流自然渲染

#### 3. 页脚 HTML 写法（关键）

```html
<div class="footer">
  <span class="series-label">2026 · 知识系列</span>
  <span class="page-number">02 / 06</span>
</div>
```

```css
.series-label, .page-number {
  font-size: 11px;
  color: #AAAAAA;
  letter-spacing: 0.5px;
}
```

- ⚠️ **禁止使用 `::after` 伪元素**
- ⚠️ **角标 div 必须放在 `.container` 内部最末尾**
- ⚠️ **底部 padding 至少 10px（建议 12px）**

---

### ❌ 反模式示例（禁止使用的写法）

#### 反模式 1：使用 `::after` 伪元素
```css
/* ❌ 禁止 */
.page-number::after { content: "●"; }
```

#### 反模式 2：使用 `position: absolute` 定位页码
```css
/* ❌ 禁止 */
.footer { position: absolute; bottom: 0; }
/* ✅ 正确：用 flexbox flex-shrink:0 */
```

#### 反模式 3：使用 `min-height: 100vh`
```css
/* ❌ 禁止 */
html, body { min-height: 100vh; }
/* ✅ 正确：height: 720px */
```

#### 反模式 4：footer 写在 `.container` 外面
```html
<!-- ❌ 禁止 -->
<div class="container"><div class="content">...</div></div>
<div class="footer">02 / 06</div>

<!-- ✅ 正确 -->
<div class="container">
  <div class="content">...</div>
  <div class="footer">...</div>
</div>
```

### HTML 完整模板（可直接复制）

可直接复制使用的完整模板位于：`references/card-template.html`

```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=540, height=720">
  <title>小红书知识卡片</title>
  <style>
    html, body {
      margin: 0; padding: 0;
      width: 540px; height: 720px;
      overflow: hidden;
      font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
      background: #FFFFFF;
    }
    .container {
      display: flex; flex-direction: column;
      width: 540px; height: 720px; box-sizing: border-box;
    }
    /* === 页头 === */
    .header {
      flex-shrink: 0;
      display: flex; justify-content: space-between; align-items: center;
      padding: 0 22px; height: 40px;
    }
    .header-brand { font-size: 11px; font-weight: 500; color: #888; }
    .header-chapter { font-size: 13px; font-weight: 500; color: #1A1A1A; }
    .header-account { font-size: 11px; color: #BBB; }
    .header-divider { height: 1px; background: #E0DDD8; margin: 0 22px; flex-shrink: 0; }
    /* === 内容区 === */
    .content {
      flex: 1; overflow: hidden;
      padding: 16px 22px 0 22px;
    }
    /* === 页脚 === */
    .footer {
      flex-shrink: 0;
      display: flex; justify-content: space-between; align-items: center;
      padding: 8px 22px 12px 22px;
      border-top: 1px solid #E5E5E5;
    }
    .series-label, .page-number {
      font-size: 11px; color: #AAAAAA; letter-spacing: 0.5px;
    }
  </style>
</head>
<body>
  <div class="container">
    <!-- 页头（每张卡片固定） -->
    <div class="header">
      <span class="header-brand">KNOWLEDGE CARD</span>
      <span class="header-chapter">章节名称</span>
      <span class="header-account">@655</span>
    </div>
    <div class="header-divider"></div>

    <!-- 内容区（按卡片类型填充） -->
    <div class="content">
      <!-- 封面页 / 正文页 / 图表页内容放这里 -->
    </div>

    <!-- 页脚（每张卡片固定） -->
    <div class="footer">
      <span class="series-label">2026 · 知识系列</span>
      <span class="page-number">01 / 06</span>
    </div>
  </div>
</body>
</html>
```

---

## 内容布局模板（ASCII 速查）

### 封面卡片

```
┌────────────────────────────────────────┐
│ KNOWLEDGE CARD   [系列名]        @655  │  ← 页头
│ ─────────────────────────────────────  │
│  · · · · · · · · · · · · · · · · ·   │  ← 点阵装饰
│  · · · · · · · · · · · · · · · · ·   │
│ ████  文章主标题（大字重）             │  ← 竖条+标题
│ ████  副标题                          │
│ ──────────────                        │
│ [# 标签1]  [# 标签2]  [# 标签3]       │  ← 标签组
│ ┌──────────────────────────────────┐  │  ← 目录框
│ │ OUTLINE                          │  │
│ │ 01  章节一   02  章节二   ...    │  │
│ └──────────────────────────────────┘  │
│ ─────────────────────────────────────  │  ← 页脚
│ 2026 · 知识系列                01/06   │
└────────────────────────────────────────┘
```

### 正文内容卡片

```
┌────────────────────────────────────────┐
│ KNOWLEDGE CARD   [章节名]        @655  │
│ ─────────────────────────────────────  │
│ 02 · 核心概念标题                      │
│ ──────────────                         │
│ 正文段落……（3-4行）                    │
│ ▌ "引用金句"                           │
│   — 来源                               │
│ 关键要点  ─────                        │
│ ● 要点一   ● 要点二   ● 要点三          │
│ ─────────────────────────────────────  │
│ ┌─── NOTE ──────────────────────────┐  │
│ │ 补充说明内容                        │  │
│ └───────────────────────────────────┘  │
│ ┌─── STEP BY STEP ─────────────────┐  │
│ │ [1] 步骤一  [2] 步骤二  [3] 步骤三│  │
│ └───────────────────────────────────┘  │
│ ─────────────────────────────────────  │
│ 2026 · 知识系列                02/06   │
└────────────────────────────────────────┘
```

### 图表数据卡片

```
┌────────────────────────────────────────┐
│ KNOWLEDGE CARD   [数据与图表]    @655  │
│ ─────────────────────────────────────  │
│ 03 · 数据对比标题                      │
│ ──────────────                         │
│ ┌─── BAR CHART ─────────────────────┐ │
│ │ █ ██  █  █  █  ██ （柱状图）      │ │
│ │ A  B  C  D  E  F                  │ │
│ └───────────────────────────────────┘ │
│ 对比分析  ──────                       │
│ ┌─── 维度 ─── 方案A ─── 方案B ─ 推荐┐ │
│ │   成本      低       高        A  │ │
│ │   扩展性    有限     强         B  │ │
│ └───────────────────────────────────┘ │
│ 小结文字……                             │
│ ▌ "核心结论一句话"                     │
│ ─────────────────────────────────────  │
│ 2026 · 知识系列                03/06   │
└────────────────────────────────────────┘
```

---

## 提示词模板

生成卡片时使用以下结构：

```
[角色]: 你是一位专业的知识可视化设计师，擅长将复杂概念图解为清晰易懂的视觉卡片。

[风格]: Notion 黑白极简风格 —— 白底、黑色文字、灰色分隔线、无彩色

[视觉要求]:
- 无衬线字体为主，层次分明
- 仅用黑白灰色系，禁止彩色
- 宽高比3:4（竖版），1080×1440px

[页头规范 - 必须]:
每张卡片顶部三列页头：
- 左：KNOWLEDGE CARD（font-size:11px，color:#888）
- 中：章节名（font-size:13px，color:#1A1A1A）
- 右：@655（font-size:11px，color:#BBB，右对齐）
- 页头下方：水平分隔线（1px，#E0DDD8）

[页脚规范 - 必须]:
每张卡片底部页脚：
- 左：系列标识（如 2026 · 知识系列）
- 右：页码（如 02 / 06）
- 两者颜色 #AAAAAA，font-size:11px
- 页脚上方：分隔线（0.5px，#D0CDC8）

[布局要求]:
- 紧凑布局，留白不超过20%
- 除封面外，每张卡片必须包含多个内容模块
- 正文：13px段落 + 引用块（左竖条+灰底）+ 圆点列表 + NOTE框 + 步骤框（按需组合）
- 图表：柱状图（黑白灰柱子）+ 对比表格（黑色表头 + 斑马纹行）

[内容]:
[卡片主题]: [具体标题]
[核心内容]: [详细文字内容]

[底部页码 - 必须严格遵守]:
- HTML结构使用 references/card-template.html 作为基准模板
- .header 区包含三列：brand=KNOWLEDGE CARD / chapter=[章节名] / account=@655
- .footer 区使用 justify-content:space-between，左侧系列名，右侧页码
- CSS约束：
  html, body { margin:0; width:540px; height:720px; overflow:hidden; }
  .container { display:flex; flex-direction:column; width:540px; height:720px; }
  .content { flex:1; overflow:hidden; }
  .footer { flex-shrink:0; padding:8px 22px 12px; border-top:1px solid #E5E5E5; }
- ⚠️ 禁止 ::after 伪元素、position:absolute/fixed、min-height:100vh
- ⚠️ footer 必须在 .container 内部
```

---

## 万字文档处理

对于超长文档（万字以上）：

1. **内容压缩策略** — 提取每个章节的核心观点（1-2句）；合并相似内容；用简洁图表替代冗长文字；提炼金句和关键数据

2. **卡片数量控制** — 封面：1张；核心内容：4-6张；总结要点：1张；总计不超过8张

---

## ✅ 生成后质量检查清单（必须逐项确认）

**每张卡片生成后，必须按以下清单逐项检查。任何一项不通过 → 标记为失败 → 重新生成该卡片。**

### 页头检查

- [ ] **顶部是否有三列页头**（品牌名 / 章节名 / @655）
- [ ] **账号名是否为 `@655`**（不得写成其他名称）
- [ ] **页头下方是否有分隔线**

### 页脚检查

- [ ] **底部是否有页脚区域**（左侧系列名 + 右侧页码）
- [ ] **页码格式是否正确**（格式：`02 / 06`，当前页 / 总页数）
- [ ] **页码序号是否正确**（从 1 开始递增，不重复、不跳号）
- [ ] **页码是否被底部裁切**（footer 应有至少 10px 底部 padding）
- [ ] **页脚上方是否有分隔线**

### 通用质量检查

- [ ] 中文字符完整显示，无遗漏
- [ ] 底部内容有足够空间，无剪裁
- [ ] 文字清晰，无模糊重叠
- [ ] 视觉风格统一（Notion黑白极简）
- [ ] 卡片为白底，无彩色元素
- [ ] 内容密度充足，留白不超过20%
- [ ] `.container` 使用 flexbox 布局，`.footer` 设 `flex-shrink:0`
- [ ] `html/body` 和 `.container` 使用固定高度 `height:720px`
- [ ] 无 `position: absolute`、`position: fixed`、`::after` 伪元素

### 批量验证（所有卡片生成完后）

- [ ] 检查所有卡片的页码是否连续且正确（不跳号、不重复）
- [ ] 确认所有卡片页头 @655 统一
- [ ] 确认总页数 = 计划页数

---

## 输出格式

生成完成后，以清晰格式呈现：

```
📚 已生成 [N] 张知识卡片

[封面卡片图片]

[内容卡片1图片]

...

[总结卡片图片]

💡 使用建议：[简要使用提示]
```

---

## 常见问题

**Q: 账号名写什么？**
A: 固定写 `@655`，右对齐，位于页头右侧，颜色 #BBB，字号 11px。

**Q: 如何控制留白不超过20%？**
A: 使用紧凑 padding，减少标题与正文之间的 margin，每张卡片（除封面外）包含多个内容模块：文字段落、列表、图表、NOTE框、步骤框等。

**Q: 内容太多塞不下怎么办？**
A: 提炼核心关键词，拆分到多张卡片，控制每张卡片3-5个要点。

**Q: 如何保持卡片风格一致？**
A: 严格按照设计规范，使用相同的颜色系统、字体和间距。所有卡片仅用黑白灰，不加彩色。

**Q: 中文字显示不完整怎么办？**
A: 在提示词中明确强调"所有中文字符必须完整显示"；使用 `line-height: 1.5-1.6`；内容区域用 `padding: 20px 22px`。

**Q: 页面角标样式是什么？**
A: 位于页脚右侧，格式为 `02 / 06`，颜色 #AAAAAA，字号 11px。

**Q: 角标不显示或位置不对怎么办？**
A: 常见原因（按频率排序）：
1. 使用了 `position: absolute` → 改用 flexbox
2. 使用了 `min-height: 100vh` → 改用固定 `height: 720px`
3. footer 在 `.container` 外部 → 移入内部最末尾
4. 底部 padding 不够 → 确保 `padding-bottom: 10px`
5. 使用了 `::after` 伪元素 → 改为直接写在 HTML 中

详细模板请参考：`references/card-template.html`

