HTMLを学び始めた人がよくハマる罠。
<p>
  ...
  <h1>見出し</h1>
  ...
</p>
のような書き方をしてはいけないよというお話です。
<p> は段落(paragraph)を意味するタグで、<h1>,<h2>などは見出し(heading)を意味するタグです。
文章の構造が
見出しA
段落A
段落B
見出しB
段落C
段落D
というようになっていた場合、
<h1>見出しA</h1>
<p>段落A</p>
<p>段落B</p>
<h1>見出しB</h1>
<p>段落C</p>
<p>段落D</p>
のように囲うべきです。
<p>
  段落1
  <h1>見出し</h1>
  段落2
</p>
のような構造は不自然です。
またWebブラウザーもこの下のような文書構造は許可しておらず、このような書式を見つけるとブラウザーは自動的に</p>を見出しの前に補完します。つまり下記のようなHTMLとして扱われます。
<p>
  段落1
</p><!-- ←これがブラウザーにより自動的に補完される -->
  <h1>見出し</h1>
  段落2
</p> <!-- ←これは無意味なタグとして無視される -->
このようになると何が問題かというと、段落2の部分は<p>要素の子ではないということになるので、例えば
p {
  color: blue;
}
のようなスタイルが意図したとおりに適用されなくなります。
一見段落1と見出しと段落2が青くなるように見えますが、実際には段落1のみに適用されます。
知らないとハマることになるので、HTMLを学び始めた人は最初からきちんとした構造のHTMLを書くように気をつけましょう。