Content · Web Development · HTML

HTML Why Nested Paragraphs Do Not Behave as Written

Learn why nested paragraphs do not behave as written with a clear explanation, practical HTML markup, a walkthrough and common mistakes to avoid.

1 views Published Oct 19, 2026 Updated Oct 19, 2026 Admin

A small piece of HTML can change what a visitor sees or how the browser understands a page. In this lesson, you will explore why nested paragraphs do not behave as written using a short example that you can inspect and change.

The Idea in Plain English


A paragraph only allows phrasing content. Starting a div or another block-level section inside it causes the browser to close the paragraph early.

You can test this using a small local HTML file. Change one part at a time and check the result in the browser before adding more code.

A Working Example


Read the sample once before copying it. Notice the element names and attribute values, then compare them with the explanation below.

<!-- Incorrect source (browser repairs it): -->
<p>Hello <div>friend</div></p>

<!-- Better markup: -->
<p>Hello friend.</p>
<div>Additional information.</div>

What Each Part Does


  • A paragraph keeps one idea together as readable text.
  • A div groups content without adding a special meaning.

The live DOM may have more paragraph nodes than the source appears to contain.

Keep the example small while learning. Once it behaves as expected, try it inside a larger page and make sure the URLs, files and surrounding HTML are correct.

Try It Yourself


Try this next: compare authored source against the DOM tree in DevTools focused on Why Nested Paragraphs Do Not Behave as Written, including a working example and an incorrect example to correct. Then inspect the page and explain what changed.

Common Beginner Mistakes


  • Putting a div directly inside a p element and trusting the browser to keep the written nesting.
  • Changing several parts of the example at once, making it difficult to see which part caused a different result.
  • Choosing a tag only because its default appearance looks right, without checking whether it describes the content correctly.

Key Takeaways


  • A paragraph only allows phrasing content. Starting a div or another block-level section inside it causes the browser to close the paragraph early.
  • The live DOM may have more paragraph nodes than the source appears to contain.
  • Test the markup in a browser, and check accessibility and real-world behavior where relevant.
Share this resourceSend this page to someone who may find it useful.