HTML 테이블을 마크다운 표로 변환하기
HTML의 <table>을 README나 GitHub Issue, Notion, velog 등에 마크다운 표로 옮겨 적고 싶을 때는 FormatArc의 HTML to Markdown 변환기에 HTML을 붙여넣고 결과를 복사하면 됩니다. 모든 처리는 브라우저 안에서 완결되며 데이터가 외부 서버로 전송되지 않습니다.
- HTML to Markdown 변환기를 엽니다.
- HTML 코드를 붙여넣습니다(
<table>요소 전체 또는 이를 포함한 페이지 조각). - "실행"을 누르고 출력된 GitHub Flavored Markdown(GFM) 표를 복사합니다.
아래에서는 이 변환이 구체적으로 어떤 작업을 수행하는지, 표가 깨지지 않도록 어떤 예외 처리가 들어가는지, 그리고 마크다운 표 자체의 사양적 한계는 무엇인지 설명합니다.


HTML 테이블 변환 예시(변환 전과 변환 후)
다음과 같은 기본적인 HTML 테이블이 있다고 가정해 보겠습니다.
<table>
<tr><th>이름</th><th>역할</th><th>팀</th></tr>
<tr><td>민준</td><td>엔지니어</td><td>인프라</td></tr>
<tr><td>서연</td><td>디자이너</td><td>웹</td></tr>
</table>
이 코드를 변환기에 붙여넣으면 GitHub Flavored Markdown(GFM) 표로 변환됩니다.
| 이름 | 역할 | 팀 |
| --- | --- | --- |
| 민준 | 엔지니어 | 인프라 |
| 서연 | 디자이너 | 웹 |
첫 번째 <tr>이 헤더 행이 되고, 구분 행(---)이 자동으로 생성됩니다. 출력은 기본 왼쪽 정렬된 GFM 표이므로 GitHub, GitLab, Notion, velog 등 마크다운을 지원하는 대부분의 환경에서 그대로 렌더링됩니다.
깨지기 쉬운 표의 자동 처리
HTML에서 마크다운 표로 변환할 때 까다로운 부분은 단순한 구조가 아니라, 셀 내부의 특수 문자나 행마다 서로 다른 셀 개수가 표를 조용히 깨뜨리는 경우입니다. 대표적인 세 가지 패턴은 행 구조가 무너지지 않도록 자동으로 처리됩니다.
셀 안에 파이프(|)가 포함된 경우
마크다운 표에서 | 기호는 열을 구분하는 구분자입니다. 따라서 셀 안에 | 문자가 그대로 들어가면 파서가 열을 잘못 분리하여 표가 깨집니다. 변환기는 이를 자동으로 이스케이프합니다.
<td>a | b</td>
위 HTML은 변환 후 a \| b가 되며 열 수가 어긋나지 않습니다.
셀 안에 줄바꿈이 포함된 경우
셀 내용에 일반 줄바꿈(개행)이 포함되어 있으면 마크다운에서는 새로운 행으로 인식되어 전체 표의 레이아웃이 무너집니다. 셀 안의 줄바꿈은 공백 한 칸으로 치환되어 각 데이터 행이 한 줄을 유지하도록 정리됩니다.
행마다 셀 개수가 다른 경우
헤더 열 수보다 셀이 많거나 적은 불규칙한 행이 섞여 있어도, 변환기는 모든 데이터 행을 헤더 열 수에 맞춥니다. 초과된 셀은 잘라내고 부족한 셀은 빈 셀로 채워 열 어긋남이 없는 유효한 표를 생성합니다.
마크다운 표 형식 자체의 규칙은 마크다운 표 작성법과 GFM 테이블 치트시트를 참고하세요.
웹 페이지에서 복사한 표 변환하기
HTML 소스 코드가 파일 형태로 있지 않고 웹 브라우저 화면에 표시된 표를 보고 있는 상황도 자주 있습니다. 이때 마크다운 표로 가져오는 확실한 방법은 두 가지입니다.
HTML 요소를 복사한 경우
브라우저에서 표를 마우스 오른쪽 버튼으로 클릭하고 "검사(Inspect)"를 선택한 뒤, 개발자 도구의 <table> 요소를 마우스 오른쪽 클릭하여 "복사" - "요소 복사(Copy element)"를 누릅니다. 복사한 HTML 코드를 HTML to Markdown 변환기에 붙여넣어 변환합니다.
화면의 셀을 직접 복사한 경우
화면에 표시된 표의 셀 영역을 드래그하여 복사하거나 엑셀·스프레드시트에서 복사하면, HTML 코드가 아니라 탭(Tab)으로 구분된 텍스트(TSV)가 클립보드에 들어가는 경우가 일반적입니다. 이 경우에는 탭 구분 및 쉼표 구분 텍스트를 읽어 마크다운 표로 만들어 주는 CSV to Markdown 변환기를 사용하는 것이 적합합니다. 스프레드시트 데이터를 복사해 변환하는 구체적인 방법은 엑셀 표 마크다운 변환에서 자세히 다루고 있습니다.
정리하자면 실제 HTML 태그가 포함된 코드는 HTML to Markdown에, 화면이나 스프레드시트에서 드래그해 복사한 셀 데이터는 CSV to Markdown에 붙여넣어 변환하면 됩니다.
변환 결과가 의도와 다를 때 (지원되지 않는 구조)
변환기는 일반적인 HTML 테이블 구조를 전제로 동작합니다. 마크다운 표 사양 자체가 지원하지 않는 일부 HTML 구조는 그대로 변환하기 어렵습니다.
- 헤더 행이 없는 경우 — 첫 번째
<tr>이 항상 헤더 행으로 처리됩니다. 헤더가 없는 순수 데이터 표라면 첫 번째 데이터가 헤더로 올라가므로, 필요하다면 변환 후 상단에 헤더 행을 추가해 주세요. - 셀 병합(
rowspan/colspan) — 마크다운 표 문법에는 셀 병합 사양이 없습니다. 병합된 셀은 자동으로 분할되지 않으므로, 복잡하게 병합된 표는 변환 전에 병합을 풀고 평탄화하는 작업이 필요합니다. - 중첩된 표(Nested Table) — 셀 내부에 또 다른
<table>이 들어 있는 구조는 행 순회 과정에서 구조가 섞여 정상 변환되지 않습니다. 안쪽 표는 별도로 분리하여 변환해야 합니다. - 셀 안의 링크 및 텍스트 서식 — 셀 내부 콘텐츠는 일반 텍스트(plain text)로 처리되므로 태그나 링크가 텍스트로 평탄화됩니다. 서식이 필요하다면 변환된 마크다운 표에 링크 문법을 추가해 주세요.
- 열 정렬(가운데·오른쪽 정렬) — 기본 출력은 왼쪽 정렬입니다. 가운데 정렬(
:---:)이나 오른쪽 정렬(---:)이 필요하다면 변환된 구분 행의 콜론 위치를 수정하면 됩니다.
변환된 표가 화면에서 깨져 보인다면 대부분 셀 병합(rowspan/colspan)이나 중첩 테이블이 원인입니다. 표뿐만 아니라 제목·목록·링크 등 HTML 문서 전체를 변환하고 싶다면 HTML 마크다운 변환 가이드를 참고하세요.
브라우저 완결·서버 업로드 없음
모든 변환 작업은 브라우저 내에서 JavaScript로 실행됩니다. 붙여넣은 HTML 코드는 외부 서버로 전송되거나 로그에 기록되거나 저장되지 않습니다.
표 내용에 사내 고객 데이터, 가격표, 비공개 대시보드의 통계 등 민감한 정보가 포함되어 있을 때 데이터의 보안은 필수적입니다. 많은 온라인 변환 도구가 입력값을 서버로 업로드하여 처리하지만, FormatArc는 사용자의 기기 안에서만 연산하므로 안심하고 변환할 수 있습니다. 이러한 차이가 중요한 이유와 보안 검증 기준은 온라인 변환 사이트 보안 검증에서 다루고 있습니다.
자주 묻는 질문
HTML 테이블을 마크다운 표로 변환하려면 어떻게 하나요?
<table> 태그를 포함한 HTML 코드를 FormatArc의 HTML to Markdown 변환기에 붙여넣고 "실행"을 누릅니다. 첫 번째 행이 헤더로 변환된 GitHub Flavored Markdown 표를 바로 복사할 수 있습니다.
변환한 마크다운 표가 깨지는 이유는 무엇인가요?
가장 흔한 원인은 마크다운 표 사양에서 지원하지 않는 셀 병합(rowspan / colspan)과 중첩된 표입니다. 셀 내부의 파이프나 줄바꿈은 자동으로 처리되므로, 열이 어긋난다면 셀 병합이나 중첩 테이블을 먼저 해제해 주세요.
셀 안의 링크나 굵은 글씨(볼드)는 유지되나요?
유지되지 않습니다. 셀 내부 내용은 일반 텍스트로 평탄화되어 변환됩니다. 링크나 강조가 필요한 경우 출력된 마크다운 표에서 마크다운 문법으로 다시 지정해야 합니다.
HTML 테이블에 헤더 행이 없으면 어떻게 되나요?
첫 번째 <tr>이 자동으로 헤더로 간주됩니다. 헤더가 없는 표인 경우 첫 번째 데이터 행이 헤더 위치에 표시되므로, 변환 결과 상단에 알맞은 헤더를 직접 추가해 주세요.
웹사이트 화면에서 복사한 표도 변환할 수 있나요?
가능합니다. 브라우저 개발자 도구(DevTools)에서 <table> 요소를 "요소 복사(Copy element)"한 뒤 HTML to Markdown 변환기에 붙여넣으면 됩니다. 만약 웹 화면의 셀을 마우스로 드래그해서 복사했다면 탭 구분 텍스트로 복사되므로 CSV to Markdown 변환기를 사용하세요.
정리
- HTML
<table>코드를 HTML to Markdown 변환기에 붙여넣으면 GitHub Flavored Markdown(GFM) 표로 변환됩니다. - 셀 안의 파이프(
|)는 이스케이프되고, 줄바꿈은 공백으로 치환되며, 행별 열 수도 자동으로 맞춰져 표가 깨지지 않습니다. - 셀 병합(
colspan/rowspan)과 중첩 테이블은 마크다운 표 사양상 지원되지 않으므로 변환 전 평탄화가 필요합니다. - 웹 페이지나 스프레드시트에서 셀을 드래그해 복사한 텍스트는 CSV to Markdown 변환기를 활용합니다.
- 모든 처리는 브라우저 안에서 완결되어 민감한 데이터도 안전하게 변환할 수 있습니다.