¿Se permiten elementos de nivel de bloque dentro de elementos de nivel en línea en HTML5?

Para un ejemplo

¿Es

Heading

válido en HTML5?

sí, lo que has escrito es válido en HTML5, pero no todos los elementos en línea, creo que solo se aplica a .

Referencia: enlaces de “nivel de bloque” en HTML5

Consejo: si usa esto, configure para display: block; o puede haber resultados de estilo visual involuntarios: Fuente: Caso de prueba

Actualizar:

Está “prohibido” para otras combinaciones de “bloque en línea” donde “los estilos predeterminados pueden generar confusión” – la explicación está aquí :

Casos en los que los estilos predeterminados pueden generar confusión

Ciertos elementos tienen estilos o comportamientos predeterminados que hacen que ciertas combinaciones puedan generar confusión. Donde estos tienen alternativas equivalentes sin este problema, las combinaciones confusas no son permitidas.

Por ejemplo, los elementos div se representan como cuadros de bloque y abarcan elementos como cuadros en línea. Poner un cuadro de bloque en una caja en línea es innecesariamente confuso; como anidar solo elementos div, anidar elementos simples o anidar elementos span dentro de elementos div, todos tienen el mismo propósito que anidar un elemento div en un elemento span , pero solo este último implica un cuadro bloque en un recuadro en línea, este último la combinación no está permitida