Markdown 轉 HTML
左側寫 Markdown、右側即時產生 HTML:表格、任務清單、程式碼圍欄、標題錨點與目錄都按 CommonMark 與 GFM 規則解析,可下載成品或直接複製
Markdown 编辑与预览
实时预览
编码
本工具只做 Markdown 到 HTML 的格式转换,不是 HTML 清理器;关闭「允许 HTML」时会转义尖括号与引号,开启后原始 HTML 会原样输出。默认按 CommonMark 规则解析,GFM 扩展覆盖表格、删除线、任务列表与裸链接自动链接。
字符 0 · 行 0 · HTML 0 字节
工具介紹
把 Markdown 轉成 HTML 這件事看起來只是換標籤,實際麻煩在規則細節:表格為什麼沒算繪、段落裡換行為什麼被吃掉、程式碼區塊裡的尖括號要不要自己轉義、目錄錨點怎麼和標題對上。這個工具把這些規則寫成可開關的選項,右側預覽所見即所得,左側改一個字元右側立刻變,轉換結果可以直接複製走或下載成檔案。
支援的語法
- 區塊:
#到######標題與===、---底線式標題;段落;圍欄程式碼區塊(三個反引號或波浪號,帶語言名時輸出class="language-xxx");四個空格起手的縮排程式碼區塊;可巢狀的引用;無序清單用-*+,有序清單用1.或1),起始數字會保留成<ol start>;分隔線---***___ - 清單細節:按縮排層級巢狀,換用另一種標記符號會另起一個清單,條目之間留空行會產生鬆散清單(條目包成
<p>),GFM 任務清單核取方塊輸出為不可勾選的input,關閉 GFM 時保留原文 - 表格:需要表頭加分隔列,
:------::---:分別對應左中右對齊,輸出為style="text-align:...";行內儲存格不足會補齊,多餘會提示並忽略,儲存格裡的豎線用\|轉義 - 行內:
**粗**、*斜*、***粗斜***、_底線斜_、~~刪除線~~、`行內程式碼`(一行裡用兩個或三個反引號包反引號也可以),行內程式碼優先於強調標記,所以`*a*`不會被當成斜體 - 連結與圖片:行內式
[文字](url "標題")、參考式[文字][標記]配[標記]: url、尖括號自動連結<https://…>與<mailto:…>、裸連結自動辨識、圖片 - 換行:行末兩個空格或一個反斜線是硬換行,輸出
<br>;普通換行預設併入同一段落,勾選「軟換行轉 br」後每行都斷 - 轉義:反斜線轉義
\*這類符號,未辨識的字元按字面輸出
標題錨點與目錄
- 每個標題按文字產生 slug 作為
id,中文保留、標點去掉、空格變連字號,同名標題自動追加-1、-2,長文裡不會出現錨點互相覆蓋 - 開啟「產生目錄」後在正文前插入巢狀的
<ul>,層級對應標題級別,配合錨點就是一套頁內導覽 - 關閉「標題錨點」則輸出乾淨的
<h2>,適合貼到已經自帶目錄的系統裡
關於原始 HTML
- 預設關閉「允許 HTML」:正文裡的尖括號與引號全部轉義,寫
<script>只會顯示成文字,靜態部落格正文、留言區這類場景更安全 - 打開後原樣輸出原始碼裡的 HTML 區塊,方便嵌入
<details>、表格合併儲存格、<img width>這類 Markdown 表達不了的結構;此時請確保內容是自己寫的 - 程式碼區塊裡的尖括號無論開關都會轉義,貼程式碼不會被解析成標籤
複製與下載
- 複製 HTML:直接把片段貼進範本或富文字原始碼檢視
- 複製後轉義:把結果裡的
<>&"再轉一層實體,用來寫文件說明、教學範例,或者往 HTML 裡嵌一段 HTML - 下載 .md / .html:HTML 檔帶
<meta charset>,編碼下拉裡可以選帶 BOM 的 UTF-8,避免 Windows 記事本或舊瀏覽器打開時中文亂碼 - 正文存在瀏覽器本機,重新整理或下次打開會自動回到上次的文字和選項
常見問題
- 為什麼我寫的表格沒變成表格?最常見的三種情況:缺分隔列(表頭下面那行
|---|---|)、關閉了 GFM 擴充、整張表前後沒空行而被當成正文。缺分隔列或某行儲存格多於表頭時,頁面下方會給出解析提示 - 段落裡的換行為什麼被吃掉?Markdown 的規則是單個換行不算換行,需要行末留兩個空格、寫一個反斜線,或者乾脆空一行分段;嫌麻煩就勾上「軟換行轉 br」
- 和 HTML 格式化工具的差別?本工具做的是標記語言到標籤的轉換,轉換完的 HTML 如果想再排版縮排、換行對齊,可以用 HTML 格式化
- 支援註腳、定義清單、程式碼高亮嗎?不支援。註腳與定義清單屬於各家擴充,沒有統一實作;這裡也不引入高亮函式庫,只輸出
class="language-x",交給你的站台範本去做著色 - 開啟「允許 HTML」有風險嗎?有。這個模式下你寫的標籤會原樣進入結果,貼上來的內容裡若帶腳本就會被執行。只是想把別人給的 HTML 洗成純文字的話,別開這個開關
- 內容會上傳嗎?不會。解析、預覽、複製、下載全部在瀏覽器裡完成,頁面不發任何請求,斷網也能用
- 長文件會卡嗎?自動轉換有輕微防抖,幾萬字級別的文件也不會邊打字邊卡頓;統計行會顯示來源字元數、行數與產生 HTML 的位元組數,便於估算體積
- 轉換提示和報錯有什麼用?解析出問題時會帶行號提示(例如程式碼圍欄沒有閉合會按到文末處理並告訴你位置),不會靜默吞掉內容
轉好的 HTML 想再整理縮排用 HTML 格式化;只想要裡面的純文字用 HTML 去標籤;要把成段標籤當文字貼進程式碼裡用 HTML 實體編碼;改完一版想對比差異用文字比對;統計正文字數與段落用字數統計。