Документацию почитать?) на любом уровне вложенности и прямые потомки.
И если вы думаете, что такой код валидный то вы ошибаетесь. Откройте devtools и убедитесь, что "h1" не вложен в "p" и "span"
<p><span><h1>asdasd</h1></span></p>
Блочные элементы не оборачивают в строчные.