HTML Line Break Not Working
If the HTML line break is not working — especially if you’re working in the text editor of a CMS like WordPress — then you may be using the element incorrectly.
The most common misuse of the new line HTML tag is using it for presentation purposes. For virtually anything related to layout, you should use CSS instead.
For example, say you want to create more space between blocks of text or other items. Instead of using the <br> tag, you should use a semantic HTML element and the CSS margin or padding properties if necessary.
Why? Two reasons.
- Using the HTML line break element when a more semantic element is available makes your code less accessible, especially to readers using screen readers.
- Using the <br> tag to force a line break for purely presentation purposes might look good on your browser but not on other browsers or devices — especially if your site is responsive. A responsive site will automatically change the layout based on screen size. So it will already wrap text as needed and wrap text when it comes to a <br> tag. This will result in choppy, uneven blocks of text. Let’s look at an example.
For example, say I’d like to display an excerpt from the play Fleabag: The Scriptures. I should use the block quote element, which will automatically add margins on the left and right side of the text. If I were to use the <br> tag to mimic the indentation of the block quote element, then I’d be misusing the new line HTML tag.
Here’s the correct HTML:
<figure>
<blockquote>
<p>Love is awful! It’s awful. It’s painful. It’s frightening, it makes you doubt yourself, judge yourself, distance yourself from other people in your life. Makes you selfish. Makes you creepy. It makes you obsessed with your hair. Makes you cruel. Makes you say and do things you never thought you would do...</p>
</blockquote>
<figcaption>—PRIEST, <cite>Fleabag: The Scriptures</cite></figcaption>
</figure>
Here's the result:
See the Pen YzZpaRG by Christina Perricone (@hubspot) on CodePen.
Pro tip: Use a semantic element, like the block quote element, instead of the line break element when applicable to make your site more accessible to readers using a screen reader.
Using the block quote element is not only better for accessibility — it's also better for a responsive web design. If you resize your browser window, you'll notice that the block quote element in the Pen above automatically adjusts to the screen size and has no jagged edges or uneven lines of text.
If using non-semantic elements like the figure and line break elements, they will not behave in this way.
Here’s the incorrect HTML:
<figure>
<p>Love is awful! It’s awful. It’s painful. It’s frightening, it makes you doubt yourself, judge<br>
yourself, distance yourself from other people in your life. Makes you selfish. Makes you creepy.<br>
It makes you obsessed with your hair. Makes you cruel. Makes you say and do things you never<br>
thought you would do.
<figcaption>—PRIEST, <cite>Fleabag: The Scriptures</cite></figcaption>
</figure>
Here's the result:
See the Pen Incorrectly using <br> element to display excerpt from play by Christina Perricone (@hubspot) on CodePen.
Pro tip: To force text to appear or break in a specific way, use a semantically meaningful HTML element or CSS instead of the line break element to avoid layout issues like choppy text and jagged edges.
If you resize your browser window, you'll notice that the paragraph element with line break elements results in jagged edges and uneven lines of text.
So not only does this code example have accessibility issues — it also has layout issues. That's why it's important to understand when to use the line break element, and when not to.
To learn more about making your website accessible, check out The Ultimate Guide to Web Accessibility.
Adding Line Breaks in HTML
Whether you want to display poetry, song lyrics, or mailing addresses on your web pages, you’ll need to understand the dos and don'ts of the HTML line break element. Understanding this concept will help you build on your expertise of HTML.
For more on creating web pages, check out HubSpot's free CMS tools.
Editor's note: This post was originally published in May 2021 and has been updated for comprehensiveness.