The Dos and Don'ts of Adding an HTML Line Break

Learn more HTML tips from our free introductory guide.

Download the Free HTML Guide
Anna Fitzgerald
Anna Fitzgerald

Updated:

Published:

In HTML, a paragraph always starts on a new line — but what if you want text within a paragraph to start on a new line? In that case, you’ll need to create an HTML line break.

Junior developer adding HTML line break to display poem on web page

Let’s take a closer look at this HTML element and how to use it below.

Download Now: Free HTML & CSS Hacks

For example, say you’re writing a blog post about how to address an envelope or package. You want to include an example of how to format the sender’s and recipient’s addresses. In that case, you could use the line break element to place the sender’s and recipient’s names, street addresses, and cities, states, and ZIP codes all on separate lines.

Below you’ll see the same address rendered in two different ways. The first uses one paragraph element and multiple line breaks. The second uses multiple paragraph elements and no line breaks. As a result, unnecessary padding and margins are added between lines.   

See the Pen Paragraph vs Line Break Element by Christina Perricone (@hubspot) on CodePen.

Pro tip: When you want a section of content that’s related to appear on different lines, like a postal address or stanza of a poem, use line break elements instead of paragraph elements.

Now that we understand the ideal use case of line breaks, let’s walk through how to create them in HTML.

Below is an HTML file with a <p> and <br> element.

HTML file example of how to do a line break element in HTML

Since the <br> element is most commonly used to display poems or addresses, let's look at an example. Say I want to display “kitchenette building” by Gwendolyn Brooks on a web page.

In that case, I’d wrap the stanzas in <p></p> tags. Then I’d place the new line HTML tag <br> wherever I want the lines to break in each stanza.

Here’s the HTML:

 
<h2>kitchenette building</h2>
<p>We are things of dry hours and the involuntary plan,<br>
Grayed in, and gray. “Dream” makes a giddy sound, not strong<br>
Like “rent,” “feeding a wife,” “satisfying a man.”</p>
<p>But could a dream send up through onion fumes<br>
Its white and violet, fight with fried potatoes<br>
And yesterday’s garbage ripening in the hall,<br>
Flutter, or sing an aria down these rooms</p>
<p>Even if we were willing to let it in,<br>
Had time to warm it, keep it very clean,<br>
Anticipate a message, let it begin?</p>
<p>We wonder. But not well! not for a minute!<br>
Since Number Five is out of the bathroom now,<br>
We think of lukewarm water, hope to get in it.</p>

<p><em>-Gwendolyn Brooks</em></p>

Here’s the result:

See the Pen Poem with line break element by Christina Perricone (@hubspot) on CodePen.

Pro tip: Place a <br> element at each point where you want the line of text to break. Meaning, the text after the <br> will begin at the start of the next line of the text block.

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.

  1. Using the HTML line break element when a more semantic element is available makes your code less accessible, especially to readers using screen readers.
  2. 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.

Editor's note: This post was originally published in May 2021 and has been updated for comprehensiveness.

New Call-to-action

Topics: HTML

Related Articles

We're committed to your privacy. HubSpot uses the information you provide to us to contact you about our relevant content, products, and services. You may unsubscribe from these communications at any time. For more information, check out our Privacy Policy.

Learn more about HTML and CSS and how to use them to improve your website.