마크다운 줄바꿈 안 되는 이유와 해결법

마크다운 편집기에서 Enter를 한 번 눌러 줄을 나눠도, 변환된 결과에서는 그 줄바꿈이 사라지고 문장이 한 줄로 붙어버리는 경우가 있습니다. 이는 오류가 아니라 마크다운 표준(CommonMark)이 정한 동작 방식입니다. 어떤 경우에 줄바꿈이 사라지고, 어떻게 하면 확실하게 줄을 나눌 수 있는지 정리합니다.
요약 ① 마크다운 문단 안에서 Enter 한 번(소프트 브레이크)은 기본적으로 줄바꿈이 아니라 공백 하나로 처리됩니다. ② 확실히 줄을 나누려면 빈 줄로 문단을 나누거나, 줄 끝에 공백 두 칸을 남기거나, 변환기의 breaks 옵션이 켜져 있어야 합니다. ③ 변환된 HTML에
<br>태그가 있는지를 보면 어떤 방식이 적용됐는지 확인할 수 있습니다.
Enter를 눌러도 줄이 안 바뀌는 이유
메모장이나 마크다운 편집기에 안내문을 쓸 때, 줄마다 Enter만 눌러 항목을 구분하는 경우가 많습니다. 행사 날짜, 장소, 문의처를 한 줄씩 적는 식입니다.
이 텍스트를 HTML로 변환해 블로그나 게시판에 올리면, 줄마다 나눠 쓴 내용이 공백 하나만 남긴 채 한 문장으로 붙어버립니다. 분명 Enter를 눌렀는데 줄바꿈이 반영되지 않은 것처럼 보입니다.
이는 편집기나 변환기가 고장 난 게 아니라, 마크다운이 애초에 "문단 안의 개행 한 번"을 줄바꿈으로 취급하지 않도록 설계됐기 때문입니다.
줄바꿈을 확실하게 넣는 방법
마크다운 표준(CommonMark)에서 한 문단은 여러 줄의 텍스트를 하나로 묶어 렌더링합니다. 그 안에서 Enter 한 번(소프트 브레이크)은 줄바꿈이 아니라 공백 하나로 바뀝니다.
줄바꿈을 확실하게 넣는 방법은 세 가지입니다. 첫째, 줄 사이에 빈 줄을 하나 넣어 아예 별도 문단(<p>)으로 나눕니다. 둘째, 줄 끝에 공백을 두 칸 남기면 그 줄만 하드 브레이크(<br>)로 바뀝니다.
셋째, 채팅창이나 댓글창처럼 Enter 한 번에 바로 줄이 바뀌는 화면들은 변환기의 "breaks" 확장 옵션을 켜둔 경우입니다. 이 옵션이 켜지면 문단 안의 개행이 전부 <br>로 바뀝니다.
어떤 방식이 실제로 적용됐는지는 변환된 HTML 코드를 열어 줄 사이에 <br> 태그가 있는지 눈으로 확인하면 됩니다.
저희 도구로 확인하기. 직접 손으로 빈 줄을 넣거나 공백 두 칸을 세어가며 맞추지 않아도, 입력한 텍스트가 어떻게 줄바꿈되는지 미리보기와 HTML 코드로 바로 확인할 수 있습니다. 이 변환기는 breaks 옵션이 켜져 있어, 문단 안에서 Enter 한 번만 눌러도 곧바로 <br>로 반영됩니다.
무료 · 가입 불필요 · 브라우저에서만 변환(서버 전송 없음)

자주 막히는 지점
| 상황 | 원인 |
|---|---|
| 한 줄씩 Enter로 나눴는데 결과는 한 줄로 붙음 | 소프트 브레이크는 기본적으로 공백 하나로 처리됨(CommonMark 기본 규칙) |
| 줄 끝에 공백 두 칸을 넣어도 안 바뀜 | 에디터나 메신저가 저장·전송 시 줄 끝 공백을 자동으로 지움 |
| 표(테이블) 셀 안에서는 줄을 못 나눔 | 표 문법은 한 행을 한 줄의 텍스트로 파싱하므로 셀 안 개행 자체가 불가능함 |
| 코드 블록 안 줄바꿈은 그대로 유지됨 | 코드 블록은 원문을 그대로 보존하는 영역이라 소프트 브레이크 규칙이 적용되지 않음 |
정리
마크다운 문단 안에서 Enter 한 번은 줄바꿈이 아니라 공백 하나로 처리되는 것이 표준 규칙입니다. 확실히 줄을 나누려면 빈 줄로 문단을 나누거나, 줄 끝 공백 두 칸을 남기거나, 변환기의 breaks 옵션이 켜져 있어야 합니다.
같은 텍스트라도 변환기 설정에 따라 결과가 달라지므로, 변환된 HTML에 <br> 태그가 있는지를 확인하는 것이 가장 정확한 방법입니다.
무료 · 가입 불필요 · 브라우저에서만 변환(서버 전송 없음)
자주 묻는 질문
마크다운에서 줄바꿈을 확실하게 넣으려면 어떻게 하나요?
빈 줄 하나를 넣어 별도 문단으로 나누는 방법이 가장 확실합니다. 문단은 유지한 채 줄만 바꾸고 싶다면 줄 끝에 공백 두 칸을 남기면 되지만, 많은 편집기가 저장 시 이 공백을 자동으로 지우므로 눈으로 확인하는 편이 안전합니다.
breaks 옵션이 켜진 변환기와 꺼진 변환기는 무엇이 다른가요?
breaks 옵션이 켜지면 문단 안의 Enter 한 번도 곧바로 <br> 태그로 바뀝니다. 꺼져 있으면 CommonMark 기본 규칙대로 Enter 한 번은 공백으로 합쳐지고, 빈 줄이 있어야 새 문단이 생깁니다.
표 셀 안에서는 왜 줄바꿈을 넣을 수 없나요?
마크다운 표 문법은 |로 구분한 한 행을 한 줄의 텍스트로 해석합니다. 그 줄 안에 실제 개행 문자가 들어가면 표 구조 자체가 깨지기 때문에, 셀 안에서 줄을 바꾸려면 <br> HTML 태그를 직접 적어야 합니다.
코드 블록 안의 줄바꿈도 사라지나요?
아니요. 코드 블록(백틱 세 개로 감싼 부분)은 원문을 그대로 보존하는 영역이라 소프트 브레이크 규칙이 적용되지 않고, 작성한 줄바꿈이 그대로 유지됩니다.
