據 AlphaMoat 統計,截至 2026-09,figma轉高保真html 累計下載 2,758 次、獲 7 個星標,在全部 5,078 個 AI 技能中排名第 3,908 位,在「開發程式設計」分類(577 個)中排名第 491 位。
| 平台 | 累計安裝 | 累計下載 | 星標 | 評論 |
|---|---|---|---|---|
| SkillHub ↗ | 124 | 2758 | 7 | — |
各平台的計數口徑不同,統計時間不一致。
本指南使用 Figma MCP 工具讀取設計、下載指定圖片資源,並在本地生成響應式 HTML。使用者需提供帶 node ID 的完整 Figma URL 和參考截圖;四個階段各自完成後都要確認再繼續。寫入檔案前應核對 file key、節點、輸出目錄及下載資源。
資料釋出於 2026-10-29
以下是根據技能文件生成的示例,不代表實際執行結果。
2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。
| 月份 | 累計下載 | 環比 | 星標 |
|---|---|---|---|
| 2026-09 | 2758 | — | 7 |
| 2026-08 | 1960 | +41.4% | 5 |
| 2026-07 | 1386 | +77.7% | 3 |
| 2026-06 | 780 | +52.6% | 2 |
| 2026-05 | 511 | — | 1 |
| 2026-03 | 111 | — | - |
以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。
--- name: figma-to-html description: > 将 Figma 设计稿转换为高保真 HTML 页面。使用 Figma MCP 工具获取设计数据和图片资源, 结合用户提供的参考截图,生成响应式 HTML 文件。 触发条件:用户提到「figma 转 html」「figma 还原」「figma to html」「设计稿转页面」 「还原设计稿」「figma 切图」或提供 Figma 链接并要求生成 HTML 时使用。 --- # Figma to HTML
将 Figma 设计稿转换为高保真响应式 HTML 页面。
## 用户需提供
1. **Figma 地址** — 带 `node-id` 参数的完整 URL(如 `figma.com/design/<fileKey>/...?node-id=428-2244`)
2. **参考截图** — 用户上传的目标页面截图(用于视觉校准)
3. **需要下载的图片 node-id 列表**(可选)— 指定需要导出为本地图片的节点 ID
## 工作流程
按以下 4 个阶段顺序执行,每阶段完成后向用户确认再继续。
### 阶段 1:获取 Figma 数据
1. 从用户提供的 URL 中解析 `fileKey` 和 `nodeId`
- URL 格式:`figma.com/(file|design)/<fileKey>/...?node-id=<nodeId>`
- `nodeId` 中的 `-` 替换为 `:`(如 `428-2244` → `428:2244`)
2. 调用 `Figma-AI-Bridge__get_figma_data` 获取设计数据:
```
fileKey: 从 URL 解析
nodeId: 从 URL 解析(格式 1234:5678)
```
3. 将返回的完整 JSON 写入工作目录:
```
<工作目录>/<nodeId>-figma.json
```
- 文件名示例:`428-2244-figma.json`
### 阶段 2:下载图片资源
1. 在工作目录下创建 `images/` 文件夹(如不存在)
2. 从阶段 1 的 JSON 数据中识别需要下载的图片节点:
- 含 `imageRef` 的填充(用户头像、背景图等)
- 含 `IMAGE-SVG` 类型的节点(图标、矢量图)
- 用户额外指定的 node-id
3. 调用 `Figma-AI-Bridge__download_figma_images` 批量下载:
```
fileKey: 同上
localPath: <工作目录>/images
nodes: [
{ nodeId: "xxx:xxx", fileName: "<描述性名称>.png", imageRef: "..." },
{ nodeId: "xxx:xxx", fileName: "<描述性名称>.svg" }
]
pngScale: 2
```
4. 命名规则:
- 图标类:`icon-<功能描述>.svg`(如 `icon-bell.svg`、`icon-home.svg`)
- 图片类:`img-<描述>.png`(如 `img-avatar.png`、`img-banner.png`)
- 背景类:`bg-<描述>.png`(如 `bg-hero.png`)
### 阶段 3:生成 HTML
1. 读取 `<nodeId>-figma.json` 获取布局、样式、文本内容
2. 参考用户上传的截图确认视觉效果
3. 生成单文件 HTML(内联 CSS),遵循以下原则:
**布局规则:**
- 使用 Flexbox / CSS Grid 还原布局结构
- 从 figma.json 的 `layout` 字段提取:`mode`(row/column)、`gap`、`padding`、`justifyContent`、`alignItems`
- 尺寸使用相对单位(%, vw, rem),固定像素仅用于小元素(图标、间距)
**样式规则:**
- 从 `textStyle` 提取字体、字号、行高、字重
- 从 `fills` 提取颜色(支持纯色、渐变、图片填充)
- 从 `borderRadius`、`strokes`、`strokeWeight`、`effects` 提取圆角、边框、阴影/模糊
- 图片路径指向 `images/` 目录下的本地文件
**内容规则:**
- 从 `text` 字段提取所有文案,保持原文
- 保留 emoji 字符
- 交互元素(输入框、按钮)使用对应 HTML 标签
**语义化:**
- 顶部导航 → `<nav>`
- 侧边栏 → `<aside>`
- 主内容 → `<main>`
- 输入框 → `<input>` / `<textarea>`
- 可点击卡片 → `<button>` 或 `<a>`
4. 如有无法用 HTML/CSS 实现的 UI 元素(如复杂 SVG 动画、特殊滤镜),记录到:
```
<工作目录>/unimplemented-ui.md
```
格式:
```markdown
# 未实现 UI 元素
| 节点 ID | 名称 | 原因 | 建议替代方案 |
|---------|------|------|-------------|
| xxx:xxx | ... | ... | ... |
```
### 阶段 4:视觉校准与响应式适配
此阶段以 figma.json 数据为主要参考,用户上传的参考截图为辅助校验。
1. **间距还原(最高优先级)**:
- 严格从 figma.json 提取所有间距数值:`padding`、`gap`、`margin`(来自 `layout` 和 `spacing` 字段)
- 元素之间的间距必须与 Figma 设计稿一致,不可自行估算
- 容器内边距、卡片间距、列表项间距等均以 figma.json 为准
- 仅在 figma.json 缺失间距数据时,参考截图辅助判断
2. **图片尺寸还原(高优先级)**:
- 从 figma.json 的节点 `width`、`height` 字段提取图片原始尺寸
- 图片容器尺寸与 Figma 保持一致(使用 `max-width` + `height: auto` 保持比例)
- 头像、图标等固定尺寸元素使用 Figma 中的精确像素值
- 大图/Banner 使用相对单位但保持宽高比与 Figma 一致
3. **字体还原(高优先级)**:
- 从 figma.json 的 `textStyle` 字段提取 `fontFamily`、`fontWeight`、`fontSize`、`lineHeight`
- CSS 中的 `font-family`、`font-weight`、`font-size`、`line-height` 必须与 Figma 设计稿严格一致
- 注意中文字体映射:如 `PingFang SC` 需提供合理的 fallback(`-apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif`)
- `textAlignHorizontal` / `textAlignVertical` 对应 CSS 的 `text-align` 和垂直对齐方式
- 不同层级文本(标题、正文、辅助文字)的字号、字重差异必须保留,不可统一化
4. **视觉对比**:将生成的 HTML 与参考截图逐区域对比
- 整体布局比例
- 颜色准确性
- 字体大小和行高
- 元素对齐方式
4. **美观性调整**:
- 确保视觉层次清晰(标题 > 正文 > 辅助文字)
- 颜色对比度满足可读性要求
5. **响应式适配(小屏友好)**:
- 默认适配主屏幕宽度(参考 Figma 设计稿宽度)
- 减少固定宽度:大容器、卡片等优先使用 `max-width` + `width: 100%`,避免硬编码 `px` 宽度
- 添加断点适配小屏(≤768px):
- 侧边栏折叠或隐藏
- 多列布局改为单列纵向排列
- 卡片宽度改为 `100%`
- 字号适当缩小(`clamp()` 或 `@media` 均可)
- 输入框、按钮全宽
- 水平间距适当收缩(可按比例缩小,但不可完全去除)
- 添加超小屏断点(≤480px)处理极端情况
- 使用 `@media` 查询实现
- 图片添加 `max-width: 100%` 防止溢出
6. 输出最终 HTML 文件:
```
<工作目录>/index.html
```
## 输出文件清单
```
<工作目录>/
├── <nodeId>-figma.json # Figma 原始数据
├── index.html # 最终 HTML 页面
├── unimplemented-ui.md # 未实现元素记录(如有)
└── images/ # 图片资源
├── icon-*.svg
├── img-*.png
└── bg-*.png
```
## 注意事项
- 工作目录默认为当前 workspace 下以项目名命名的文件夹,如用户未指定则用 `figma-output/`
- 单文件 HTML 便于预览和分享,CSS 全部内联在 `<style>` 标签中
- 图片路径使用相对路径 `images/xxx`
- 如果 Figma 数据中有组件实例(INSTANCE 类型),展开其子节点获取实际内容
- 渐变色从 `gradient` 字段直接提取 CSS `linear-gradient` 值
用 gh 命令列工具檢視 GitHub 上的 PR 檢查、工作流執行與 API 查詢的技能。
聚合 16 個搜尋引擎、無需 API Key 的檢索技能。
用命令列直接列出、配置、授權並呼叫 MCP 服務與工具。
根據文字描述生成 Mermaid 圖表程式碼。
用受管 OAuth 訪問 YouTube Data API,檢索影片並管理頻道內容。
透過受管的 OAuth 連線訪問 GitHub REST API。
覆蓋規劃、實現、驗證與測試的編碼工作流技能。
整理 Docker 常用命令與容器工作流的技能。
資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。