Codia
返回所有文章

HTML to Figma:將 HTML、CSS 同原始碼轉成可編輯嘅 Figma 設計

教學2026-04-25

如果你可以存取 HTML 同 CSS 原始碼——例如自己嘅 production code、開源 UI library、frontend prototype,或者 static export——你可以直接將佢轉成可編輯嘅 Figma 檔。呢個係 Website-to-Figma 工作流程嘅開發者導向、source-first 版本。

點解要用原始碼,而唔係 live URL?有三個原因:最高保真度(computed styles 直接來自 CSS,而唔係由像素估算)、可以處理難以擷取嘅頁面(build-time generated、behind auth、開發中),同埋非常適合工程主導嘅 code-design round-tripping。

相關 Codia 產品:Codia HTML to Figma

何時使用 HTML-to-Figma

以下情況最啱用呢個流程:

  • 頁面喺開發環境入面,仲未部署。
  • 你有 static HTML/CSS export,但冇 design source。
  • 你正處理用 code 寫成嘅開源 design system 或 component library。
  • 工程師負責頁面,而且需要由 production CSS 反向生成 Figma source。
  • 你想將 component library 文件化返去 Figma,用嚟對齊設計。
  • Design system 團隊想審視 production CSS 同 design tokens 嘅差距。

如果頁面可以用 URL 開到,通常 Website-to-Figma 會更簡單。HTML-to-Figma 係你手上有 原始碼 嗰種情況。

HTML to Figma vs Website to Figma vs Screenshot to Figma

輸入工作流程最適合
原始 HTML/CSS sourceHTML to Figma開發者主導轉換、最高保真度、未發佈頁面。
Live URLWebsite to Figma可直接到達嘅頁面,包括競品同 production。
PNG/JPGScreenshot to Figma當你手上只係一張圖。

三種流程都會去同一個目的地:可編輯 Figma 檔。分別只係你輸入咩。

工作流程

  1. 準備原始碼。 確保 HTML 喺獨立情況下都可以正常 render——冇缺失 CSS、冇壞字體、亦唔依賴一個要持續運行嘅 build server。
  2. 開始轉換。 Codia AI 會解析 markup、套用 computed CSS styles、解析圖片同字體,再將視覺重建成 Figma layers。
  3. 喺 Figma 打開結果。 每個轉換 job 都會以 frame 形式出現,包含結構化 layers、text styles 同 image fills。
  4. 檢視——見下方清理部分。
  5. 元件化 重複元件,令 Figma 檔反映同 source code 一樣嘅結構。

轉換後會保留啲乜

通常好乾淨

  • 語義化 HTML 結構<section><article><header><footer>,同巢狀版面會轉成分組 Figma frames。
  • 文字內容同排版 — 真實文字層,保留 font-familyfont-sizefont-weightline-height
  • 顏色值 — 實色背景同文字顏色會直接轉成 Figma fills。
  • Flexbox 同 Grid 版面 — 當對應關係清晰時,會轉成 Figma Auto Layout。
  • 邊框、border-radius、陰影 — 以 Figma effects 套用。
  • 圖片 — 以 image fills 形式放入,並引用原始 asset URL。

需要檢查

  • 純 CSS 複雜效果backdrop-filter、複雜 mask-image、多段漸層混合。會近似成最接近嘅 Figma 效果。
  • Pseudo-elements::before / ::after 內容會被當成獨立 frames;pseudo-class 狀態(:hover)要逐個 state 擷取。
  • 自訂字體託管 — 透過自訂 CDN 載入嘅字體,可能需要手動對應到本地 Figma fonts。
  • CSS variables 同 design tokens — 會以原始值保留;要映射返你嘅 Figma design system 係手動步驟。
  • JS 驅動版面 — 任何由 JavaScript 尺寸或定位嘅元素,都要喺轉換前先跑到最終狀態。
  • Web animations — Figma 唔支援原生 CSS keyframes 或 transitions。請轉換靜止狀態。

按角色嘅用法

接手 codebase 嘅設計師

你入到一間公司,已經有 production frontend,但冇 Figma。HTML-to-Figma 可以俾你一個設計起點,而唔使逐個畫面手工重砌。

Design system 團隊

比較 production CSS 入面真正存在嘅樣式,對照你 Figma library 嘅內容。轉換 codebase 入面嘅代表性元件,擺埋去對應 Figma 版本旁邊。差距會即刻顯現。

文件化元件嘅工程團隊

如果你嘅 component library 喺 code 入面,但設計團隊想要 Figma 文件,HTML-to-Figma 就係橋樑。將每個元件嘅 storybook 或 demo 轉成 Figma frame。

代理商同自由工作者

客戶交俾你 static HTML mockup(通常來自上一個供應商)。HTML-to-Figma 比手工重砌快好多,仲可以俾你一個可編輯嘅重設計基線。

要清理啲乜

轉換之後,重點整理:

  • 文字樣式 — 用 Figma typography tokens 取代 inline styles。
  • 顏色 tokens — 將還原出嚟嘅 hex 值映射到你嘅 design-system color styles。
  • icon — 用你 library 入面嘅 SVG components 取代 raster icon。
  • Auto Layout — 檢查 responsive 區塊有冇正確轉換;需要時重建。
  • 元件結構 — 將重複模式(卡片、按鈕、列表項)變成 Figma components。
  • 命名 — code class names 好少直接對應到 design names,記得改到易理解。
  • 第三方 widget — 將 analytics、chat 同 consent overlay 由設計畫布移走。

常見陷阱

原始碼半壞。 如果 HTML 喺 browser 入面都 render 唔正確,轉換都冇辦法還原不存在嘅內容。先確認來源渲染正常。

缺少 CSS 或字體。 道理一樣——如果外部 CSS 或字體載入失敗,轉換只會攞到 fallback。記得將全部依賴打包好。

忘記 JS 驅動內容。 如果重要版面或內容係由 JavaScript 喺 page load 後先生成,記得喺擷取前先跑完 JS,等頁面完全 hydrated。

以為 CSS animations 會原樣轉移。 Figma 係靜態嘅。請先轉 at-rest 狀態,再需要時喺 Figma 入面設計互動 variant。

當成 code quality 檢查。 HTML-to-Figma 唔會幫你重構 code;佢只係轉換現有內容。code quality 應該喺 code review 解決,而唔係喺 Figma 入面。

配合 Figma-to-Code 一齊用

工程團隊有一個好用嘅 round-trip 模式:HTML → Figma(呢個流程)→ 喺 Figma 入面清理 → Figma to Code → 更整潔、經重構嘅 frontend。如果你想將 production CSS 入面唔一致嘅部分收斂返做一個乾淨、對齊 design system 嘅實作,呢個方法特別有用。

API 存取

如果要大批量轉換整個 component library 或 design system, Visual Struct API 可以接受 HTML 輸入,並回傳結構化 JSON,讓下游工具轉成 Figma,或者餵入 design-ops pipeline。

常見問題

我真係可以將原始 HTML/CSS 轉成可編輯 Figma 嗎?

可以。轉換會解析 HTML、套用 computed CSS,再將視覺重建成 Figma layers——文字會係真文字,顏色會係真 fills,版面會係真 Auto Layout,只要對應得上。

呢個同直接截圖頁面有咩唔同?

截圖會失去 computed CSS context——字體、精準顏色、版面推理都要由像素重新估算。HTML-to-Figma 係由 source values 開始,所以保真度更高,檢查負擔更低。

支援 React 或 Vue 呢類框架嗎?

轉換針對嘅係 rendered HTML,唔係 framework source。先將 component render 成 HTML/CSS(Storybook、static export、browser DevTools 嘅「Copy outerHTML」),再餵入去。

Tailwind CSS classes 呢?

Tailwind 喺 runtime 會編譯成標準 CSS,所以轉換見到嘅係正常 CSS rules。還原出嚟嘅 Figma styles 會對應視覺輸出,而唔係 class 名。

Design tokens 會保留嗎?

CSS custom properties(--brand-primary)會以原始值保留。要映射返到 Figma design-system tokens,仍然係手動清理步驟——不過報告會標記每一個不同 token value,方便你系統化對應。

一定要係完整網站,定係單一元件都得?

兩者都得。可以餵完整頁,或者只餵單一 component snippet。較細、較集中嘅輸入,通常會出到更乾淨結果。

API 可以處理成個 component library 嗎?

可以——批次 endpoint 請睇 Visual Struct API

相關指南

#html-to-figma#css-to-figma#code-to-design#figma#frontend#dev-workflow