HTML to Markdown
新Convert HTML to clean Markdown — pastes, imports files, and handles lists, tables and code.
Runs entirely in your browser. Nothing is uploaded.
為什麼要將 HTML 轉換為 Markdown?
Markdown 已成為技術寫作、文件撰寫和開發者內容的標準純文字格式。與 HTML 不同,它以原始形式閱讀自然流暢,可在任何文字編輯器中使用,能與 Git 乾淨地做版本控制,且被 GitHub、GitLab、Notion、Obsidian 以及所有主流靜態網站產生器原生支援。當內容已存在於 HTML 中——來自 CMS、爬取的文章、電子郵件或舊版文件平台——將其轉換為 Markdown 即可解鎖所有這些工作流程,無需手動重新格式化。
2026 年還有一個額外的實際原因:AI 和 LLM 管道強烈偏好 Markdown 而非原始 HTML。研究顯示,針對相同內容,乾淨的 Markdown 可將 Token 用量減少 68–87%。在將文件輸入檢索增強生成(RAG)系統,或為微調模型準備訓練資料時,先將 HTML 轉換為 Markdown 已成為標準做法。Perplexity、ChatGPT 和 Gemini 在處理前都會將網頁內容內部轉換為類 Markdown 表示——因此直接提供 Markdown 可跳過一個有損的轉換步驟。
基於 DOM 的 HTML 轉 Markdown 轉換原理
本工具不採用對原始 HTML 字串套用脆弱正規表達式的方式——這種方法在格式錯誤的標籤、巢狀元素和邊緣情況下容易失效——而是使用瀏覽器內建的解析器將 HTML 解析為真實的 DOM 樹,再遞迴地遍歷每個節點,將元素類型映射至對應的 Markdown 語法。區塊元素(標題、段落、列表、程式碼區塊)加上雙換行以確保 Markdown 正確渲染;行內元素(粗體、斜體、程式碼、連結)則在周圍內容中以行內方式產生 Markdown 語法。
這種基於 DOM 的方式與 Turndown.js 使用的技術相同——Turndown.js 是領先的 HTML 轉 Markdown JavaScript 函式庫,每週 npm 下載量超過 250 萬次。它能處理正規表達式轉換器遺漏的邊緣情況:blockquote 內的巢狀列表、列表項目中的程式碼、包裹圖片的錨點標籤,以及深度巢狀的表格儲存格。未知的結構性 HTML 元素如 div、section 和 article 只會透明地傳遞其子元素,不會靜默丟棄任何內容。
常見使用情境:CMS 遷移、Notion、GitHub 文件
CMS 遷移是最常見的專業使用情境。將 WordPress、Confluence、SharePoint 或 Ghost 遷移至現代 Markdown 平台的團隊,會使用 HTML 轉 Markdown 轉換來處理匯出的內容。WordPress 的匯出提供 HTML 內容區塊;Confluence 以 HTML 或 XHTML 匯出頁面。兩者均可乾淨轉換。Markdown 檔案隨後提交至 Git 儲存庫、透過 Notion 的 Markdown 匯入功能匯入,或輸入至 Docusaurus、MkDocs 或 Astro 等靜態網站產生器。
個人知識管理是另一個常見使用情境。Obsidian 和 Logseq 等工具以 Markdown 檔案為核心。當您找到想存入知識庫的文章或文件頁面時,本轉換器讓您貼上頁面 HTML,在幾秒內取得乾淨的 Markdown 檔案——保留結構而不帶有原始 HTML 標籤的雜訊。字數顯示功能有助確認轉換過程中沒有遺失任何內容。
Pandoc 與瀏覽器轉換器的比較:何時使用哪個
Pandoc 是專業管道中文件轉換的黃金標準——一個命令列工具,可在數十種格式之間轉換,包括 HTML 轉 Markdown、Markdown 轉 PDF 等。它處理定義列表、腳注和複雜巢狀結構等邊緣情況,並支援比任何 JavaScript 轉換器更多的輸出格式:MultiMarkdown、Pandoc Markdown、AsciiDoc、reStructuredText 等。如果您在伺服器上建構自動化批次轉換管道,Pandoc 是正確的選擇。
對於一次性轉換、快速內容遷移,或處理不應離開裝置的敏感資料,瀏覽器轉換器更快速實用。無需安裝、無需學習命令列、即時出結果。本工具涵蓋絕大多數真實世界的 HTML 結構——標題、段落、列表、表格、程式碼區塊、連結、圖片——使其成為日常 HTML 轉 Markdown 需求的實用首選。若您需要在 Node 中以腳本方式轉換,Markdownify 和 h2m 是穩健的 npm 替代方案,但它們需要本工具完全跳過的專案設定。
Markdown 語法參考與輸出相容性
本工具遵循的主要 Markdown 慣例:標題使用 # 到 ###### 對應 h1–h6,粗體以 **雙星號** 包裹文字,斜體以 *單星號*,行內程式碼用反引號,圍欄程式碼區塊用三個反引號加可選語言識別符。連結遵循 [文字](網址) 模式,圖片使用 。無序列表使用破折號前綴;有序列表使用數字加句點。Blockquote 在每行前加 >。
表格使用管道字元分隔欄位,標題行後跟破折號組成的分隔行(可選冒號用於對齊)。刪除線以 ~~雙波浪號~~ 包裹文字。輸出遵循 CommonMark 加 GitHub Flavored Markdown(GFM)擴充,相容於 GitHub、GitLab、VS Code 預覽、Notion、Obsidian 及幾乎所有現代 Markdown 渲染器。若您在平台間看到渲染差異,幾乎都是因為該平台使用非標準 Markdown 格式,而非輸出問題。
隱私保護、無限制使用與行動裝置支援
本 HTML 轉 Markdown 轉換器完全在瀏覽器中運行。沒有任何內容上傳至伺服器,沒有日誌記錄,也不需要帳號。這意味著貼上機密文件、內部 Wiki 或客戶內容都是安全的——內容永遠不會離開您的裝置。您甚至可以在頁面載入後斷開網路連線,工具仍可持續運作,這是沒有伺服器參與的最簡單證明。
沒有檔案大小限制、沒有每日轉換配額、也沒有付費牆。伺服器端處理檔案的線上轉換器,例如某些 Pandoc 網頁包裝器或文件轉換 API,通常將免費用戶的檔案大小限制在 1–5 MB,或每天僅允許少數次轉換。本工具沒有這些限制。它也適用於 iPhone 和 Android——從手機瀏覽器貼上 HTML,完成轉換,再將 Markdown 結果直接複製到 Notion、Obsidian 或任何其他應用程式,完全免費,無需下載應用程式。
Frequently asked questions
這個轉換器支援哪些 HTML 元素?
轉換器支援標題(h1–h6)、段落、粗體、斜體、刪除線、行內程式碼、圍欄程式碼區塊、引用區塊、水平線、連結、圖片、有序列表、無序列表、巢狀列表和表格——涵蓋完整的 CommonMark 和 GitHub Flavored Markdown(GFM)功能集。未知結構性元素如 div、section 和 article 會透明地傳遞其子元素,確保內容不會遺失。大多數真實世界的 HTML——來自 CMS 匯出、爬取的文章或文件頁面——都能乾淨轉換,無需您事後處理。
這個工具和 Pandoc 或 Turndown.js 有什麼不同?
Pandoc 是強大的命令列轉換器,但需要安裝、終端機以及了解其參數。它是自動化伺服器端管道的正確工具,但用於一次性轉換過於複雜。Turndown.js 是最常用的 HTML 轉 Markdown JavaScript 函式庫——每週 npm 下載量超過 250 萬次,GitHub 超過 10,800 顆星——本工具採用與 Turndown 相同的基於 DOM 的解析方法,確保可靠性。不同之處在於所有運算都在您的瀏覽器中進行:無需安裝、無需命令列、無需伺服器往返,且檔案不會離開您的裝置。Turndown 需要 Node 專案設定;本工具不需要。
為什麼要將 HTML 轉換為 Markdown?
Markdown 是技術寫作、文件撰寫和內容管理的標準純文字格式。將 HTML 轉換為 Markdown 讓您能夠將內容匯入 Notion 或 Obsidian、與程式碼一起提交至 Git 儲存庫、透過 Astro、Hugo 或 Jekyll 等靜態網站產生器發布,或輸入 AI 模型和 LLM。2024 年發布的研究顯示,與原始 HTML 相比,Markdown 在大型語言模型中減少了 68–87% 的 Token 用量——在建構 RAG 管道或準備微調資料集時,這是真實的成本和準確性差異。
可以用這個工具進行 CMS 遷移嗎?
可以——CMS 遷移是最常見的專業使用情境之一。貼上從 WordPress、Confluence、SharePoint、Ghost 或任何其他平台匯出的 HTML,即可獲得乾淨的 Markdown,可匯入新系統。WordPress 的匯出提供 HTML 內容區塊;Confluence 以 HTML 或 XHTML 匯出頁面——兩者均可乾淨轉換。為獲得最佳結果,請只貼上內容主體,而非包含導覽列和頁尾的完整頁面 HTML。團隊已使用瀏覽器 HTML 轉 Markdown 轉換,在不到兩天內遷移 150–200 頁的文件網站,無需使用命令列。
HTML 表格如何轉換為 Markdown?
表格轉換為 GitHub Flavored Markdown(GFM)管道表格格式,標題行後跟破折號分隔行。該格式適用於 GitHub、GitLab、VS Code 預覽、Notion、Obsidian、Docusaurus 及幾乎所有現代 Markdown 渲染器。巢狀表格會被扁平化,因為標準 Markdown 原生不支援。欄位對齊——透過 align 屬性或 CSS text-align 設定的左、中、右——使用分隔行中的冒號位置保留(例如::--- 表示左對齊,:---: 表示居中,---: 表示右對齊)。
這個轉換器可以離線使用嗎?
可以。轉換完全在瀏覽器中使用內建 DOM 解析器進行——不上傳任何檔案,頁面載入後也不需要網際網路連線。這使得使用機密 HTML 時非常安全,例如內部文件、專有 API 參考或不應離開裝置的客戶工作。您可以驗證這一點:開啟瀏覽器開發者工具,前往網路分頁,確認當您貼上 HTML 並觸發轉換時,沒有發出任何網路請求。沒有任何資料離開您的機器。
「移除多餘空白」功能是做什麼的?
它會移除 Markdown 輸出每行末尾的空格和定位符號,並將多個連續空行合併為單一空行。這使檔案保持整潔,避免可能影響嚴格 Markdown 解析器渲染的不可見空白——尤其是 GitHub 的解析器,它會將行尾空白標記為 lint 問題。這也讓輸出更容易放入執行空白檢查的文件工具中。在幾乎所有情況下保持此選項開啟都是安全的。只有極少數情況下行尾空白才具有語義意義。
巢狀列表能正確轉換嗎?
可以。巢狀的 ul 和 ol 元素會遞迴處理,每個層級在 Markdown 輸出中都有正確的縮排。混合巢狀——有序列表內的無序列表,或反之——也能正確處理。例如,有序列表內三層深的無序列表,每個層級都能獲得適當的四空格縮排,這是 CommonMark 標準。這是基於正規表達式的轉換器經常失敗並產生損壞 Markdown 的邊緣情況之一。基於 DOM 的解析能可靠地處理它。
輸出使用哪種 Markdown 格式?
輸出遵循 CommonMark 加 GitHub Flavored Markdown(GFM)擴充,用於表格和刪除線。CommonMark 是大多數平台使用的標準規格,GFM 增加了管道表格語法和 ~~ 刪除線,GitHub、GitLab 和 VS Code 均支援。這使輸出相容於 GitHub、GitLab、VS Code、Notion、Obsidian、Docusaurus、MkDocs 及大多數現代 Markdown 渲染器。如果您需要不含 GFM 擴充的嚴格 CommonMark,唯一有差異的元素是表格——其他所有元素完全相同。
可以將整個網頁轉換為 Markdown 嗎?
您可以貼上任何 HTML 片段或完整頁面主體。為獲得最佳結果,請只貼上主要內容區域——而非包含導覽、側邊欄和頁尾的完整文件——使輸出專注於有意義的內容。大多數開發者從瀏覽器開發者工具的「元素」面板只複製文章或文件的 div(右鍵點擊 → 複製 → 複製 outerHTML)。這樣可以獲得乾淨的內容 HTML,不含結構性頁面框架。轉換器也能處理完整頁面 HTML,但輸出將包含以連結平面列表形式轉換的導覽文字,這通常不是您想要的結果。
2026 年為什麼 Markdown 比 HTML 更適合 AI 和 LLM?
Perplexity、ChatGPT 和 Gemini 等 AI 系統現在讀取、分塊並重用網頁內容來生成答案。Markdown 是它們偏好的輸入格式,因為它去除了消耗 Token 而不增加語義意義的 HTML 結構標籤。用 <p class="article-body"> 標籤包裹的段落比純 Markdown 中相同的段落消耗更多 Token。2024 年發布的研究顯示,對於相同內容,Markdown 比原始 HTML 減少 68–87% 的 Token 用量——這直接降低 API 成本,並提高檢索增強生成(RAG)管道的信噪比。
行內程式碼和程式碼區塊如何處理?
行內程式碼元素(不在 pre 內的 code 標籤)以單個反引號包裹。程式碼區塊(pre > code 元素)以三個反引號圍欄包裹,遵循 CommonMark 和 GFM 標準。如果 code 元素有 'language-python' 或 'lang-python' 之類的 class,語言識別符會被提取並保留在開頭圍欄中以啟用語法高亮。從 GitHub README 頁面或文件網站轉換的程式碼區塊會在輸出中保留其語言標籤——因此您在 HTML 中擁有的語法高亮在 Markdown 中也能保留。
這個工具和 Markdownify 或 h2m 相比如何?
Markdownify 和 h2m 是用於建構管道中程式化 HTML 轉 Markdown 轉換的 Node.js npm 套件。當您需要在腳本中自動轉換數百個檔案時,它們是正確的選擇。本瀏覽器工具涵蓋了它們無法處理的使用情境:快速的一次性轉換、無法與伺服器共享的內容,以及完全不想設定 Node 專案的情況。轉換品質相近——三者都使用基於 DOM 的解析而非正規表達式——但本工具增加了即時預覽、複製按鈕和字元/字數統計,使其對內容工作更為實用。
這個工具在 iPhone 和 Android 上可以使用嗎?
可以,轉換器在行動瀏覽器上完全可用。從剪貼簿貼上 HTML,觸發轉換,然後複製 Markdown 結果——全部在手機或平板電腦上完成。介面會適應較小螢幕,以堆疊面板顯示。已在 iOS 17 的 Safari 和 Android 14 的 Chrome 上測試。一個常見的行動使用情境:從瀏覽器的分享選單取得文章的 HTML,轉換後直接在同一裝置上貼入 Obsidian 或 Notion,完全無需桌上型電腦。無需註冊、無需下載應用程式、無任何限制。
HTML 註釋和 script/style 標籤會如何處理?
HTML 註釋(<!-- ... -->)會從輸出中移除,因為 Markdown 沒有註釋語法,且註釋很少是實際內容的一部分。Script 標籤及其內容也會被丟棄——JavaScript 在 Markdown 中沒有意義。Style 標籤和行內 style 屬性也會被移除;CSS 樣式無法轉換為 Markdown,而語義意義(粗體、斜體、標題)透過元素類型而非視覺樣式來保留。如果一個 span 透過 CSS 而非 strong 或 b 標籤設為粗體,該樣式不會被帶入——這是內容格式轉換的正確行為。
有檔案大小或字元限制嗎?
沒有。由於不涉及伺服器,除了瀏覽器記憶體可處理的範圍外,沒有大小限制。實際上,瀏覽器 DOM 解析器可以處理數 MB 的 HTML 而不會出現問題——遠超任何真實 CMS 頁面。如果您正在轉換非常大的 HTML 檔案(完整的書籍匯出、非常長的爬取文章),請分段貼上而非一次全部貼入,以獲得最清晰的輸出。轉換本身無論大小都需要毫秒級時間,因為它直接在瀏覽器分頁的 JavaScript 中運行。
Related tools
檢視所有工具試算表欄位轉換器
將試算表欄位編號轉成字母(1 → A),並可轉回。
Srcset 產生器
依你提供的寬度產生含 srcset 與 sizes 的響應式 <img> 標記。
正規表示式測試器
測試正規表示式,即時標示比對結果,支援擷取群組與取代預覽。
JSON Schema Validator
Validate JSON against a JSON Schema (draft-07 / draft-2020-12) with clear error messages.
YAML Formatter
Validate, beautify, and convert YAML online. Real-time syntax highlighting, error detection with line numbers, and one-click JSON export.
JSON 格式化工具
美化、壓縮並驗證 JSON,即時提示錯誤。