HTML → Markdown 변환기

WordPress 글을 Hugo로 옮기거나, Confluence 페이지를 노트로 보관하거나, 리치 텍스트 이메일을 문서 위키용으로 정리하는 일은 모두 HTML을 Markdown으로 변환하는 작업입니다. 이 변환기는 제목, 문단, 목록, 링크, 이미지, 코드 블록을 각각 Markdown으로 변환하므로 HTML의 군더더기 없이 내용의 구조를 유지할 수 있습니다.

HTML을 Markdown으로 변환하는 방법

  1. 1

    HTML 붙여넣기

    전체 페이지, 리치 텍스트 이메일 본문, 스니펫 모두 파싱됩니다.

  2. 2

    변환

    제목, 문단, 목록, 링크, 이미지, 코드 블록이 Markdown으로 변환됩니다.

  3. 3

    Markdown 복사

    출력을 Obsidian, Hugo, Jekyll, Notion, Git 저장소에 넣으세요.

HTML을 Markdown으로 매핑하기

변환기는 DOM을 순회하며 인식된 각 요소에 대해 Markdown을 생성합니다. <div>, <span>, <section>, <article> 같은 래퍼 태그는 제거되고 그 내용은 올바른 중첩 수준에서 유지됩니다.

요소 매핑

HTML Markdown 출력
<h1> ~ <h6> # ~ ###### 헤딩
<strong>, <b> **text**
<em>, <i> *text*
<code> 인라인 `text`
<pre><code> 삼중 백틱 펜스 블록, 언어 설정 시 포함
<a href> [text](url)
<img src alt> ![alt](src)
<ul><li> - item
<ol><li> 1. item
<blockquote> > quote
<hr> ---

나머지 요소는 어떻게 되나요

Markdown은 모든 HTML 요소를 표현할 수 없습니다. Markdown에 대응이 없는 태그는 제거되고 텍스트 내용만 남습니다:

  • <table>: 셀 안의 텍스트는 남지만 표의 격자는 사라집니다. 구조가 중요하다면 표를 지원하는 변환기를 사용하세요.
  • <del>, <u> 등 인라인 스타일: 텍스트는 남지만 스타일은 사라집니다.
  • <video>, <audio>, <iframe>: 이 삽입 요소들에서는 Markdown으로 표시할 수 있는 결과물이 생성되지 않습니다.
  • <details> / <summary>: 안쪽 텍스트는 유지되지만 펼침 위젯은 유지되지 않습니다.

손실 없는 왕복 변환이 필요하면 렌더링된 HTML이 아니라 원본 Markdown에서 변환하세요.

자주 묻는 질문

단순한 <div><span> 래퍼는 제거되고 그 내용이 올바른 중첩 수준에서 출력됩니다. 레이아웃 전용 div는 Markdown에서 보이지 않게 되며, 이는 보통 문서에 바람직한 결과입니다.

네. <pre><code class="language-js">js를 언어 힌트로 하는 펜스 블록이 됩니다. 언어가 없는 들여쓰기 코드 블록은 일반 펜스 블록으로 처리됩니다.

<table> 셀 안의 텍스트는 남지만 격자 자체는 남지 않습니다. 행과 열이 유지되지 않아 구조가 사라지므로, 구조가 중요하다면 표를 지원하는 변환기를 사용하세요.

거의 가능합니다. 다만 미묘한 포맷(참조 스타일 링크, 두 칸 공백의 강제 줄바꿈, 다른 강조 표시 기호)은 정규화될 수 있습니다. 무손실 왕복이 필요하면 원본 Markdown을 보관하세요.

관련 도구

이 도구는 다른 언어로도 제공됩니다