Många taggar i html kan webbläsaren gissa sig till hör de ska tolkas och det är därför det ser ut att fungera. Men alla webbläsare är inte lika snälla mot kodarens misstag så det är lika bra att vara ordentlig och skriva korrek html.
HTML kräver inte en slut tagg till <p>, <li>, <th>, <td>, <tr> och kanske något element till. Det anses av somliga doc vara god praxis. Jag är en av dessa, då jag ofta sett hur man tappar kontroll över sin struktur utan avslutande taggar.
Vad är exempelvis resultatet av detta:
<p>foo<div>bar</div>
Detsamma som:
<p>foo</p><div>bar</div>
Eller
<p>foo<div>bar</div></p>
Svaret är alternativ 1, men är det uppenbart?
För tydlighets skull, du avslutar inte p-taggen, utan p-elementet. Element = starttagg + innehåll + sluttagg.