Why Enter does nothing
Markdown treats a single newline inside a paragraph as a “soft break” and renders it as a space. That lets you wrap source text at any width without changing the output. Turn on Show whitespace above to see the invisible characters that decide what happens.
Three ways to force a line break
- Two trailing spaces at the end of the line. The original syntax, but invisible and often stripped by editors that trim whitespace.
- A backslash at the end of the line. CommonMark and GFM support it and you can see it, so it survives editors.
- HTML
<br>. Works almost everywhere, including inside table cells, where the other two can’t be used.
New paragraph
Leave one empty line between blocks of text. Several empty lines count as one.
Extra vertical space
Markdown collapses blank lines. For visible extra space use <br> on its own line, or in an otherwise empty paragraph.
Line breaks in tables
A table row must be on one source line, so use <br> inside a cell. The table generator does this for you when a cell contains a newline.
Where Enter does make a new line
GitHub comments, issues and chat apps turn on “breaks” mode, so each Enter is a line break there. READMEs and .md files on GitHub use standard behaviour. The editor on this site has a “Line breaks on Enter” toggle so you can preview both.