/ / ¿Es válido tener un elemento en línea sin un padre a nivel de bloque? - html, css

¿Es válido tener un elemento en línea sin un padre de nivel de bloque? - html, css

Quiero saber si los elementos principales a nivel de bloque son técnicamente necesarios para los elementos en línea en un documento HTML. Por ejemplo, los siguientes HTML...

<html>
<head>
</head>
<body>
<b>Some Text</b>
</body>
</html>

¿Es este un documento HTML válido? O debe <b> y </b> las etiquetas se encapsulan en un elemento de nivel de bloque para que se consideren válidas, como <p> o <div>? (Esperemos que la respuesta sea la misma para HTML4 y HTML5)

Muchas personas hacen una pregunta similar: ¿Puedo colocar un elemento de nivel de bloque dentro de un elemento en línea? Quiero saber lo contrario. ¿Pueden los elementos en línea ir a cualquier lugar además de un elemento de nivel de bloque en un documento HTML?

Estoy viendo esto en un RFC:

Se dice que ciertos elementos HTML que pueden aparecer en BODY están a "nivel de bloque", mientras que otros están "en línea" (también conocido como "nivel de texto") ...

Generalmente, los elementos a nivel de bloque pueden contener elementos en línea y otros elementos a nivel de bloque. Generalmente, los elementos en línea pueden contener solo datos y otros elementos en línea. https://www.w3.org/TR/html401/struct/global.html#h-7.5.3

Pero, no sale totalmente y lo dice.

Respuestas

0 para la respuesta № 1

Puede colocar un elemento en línea en cualquier lugar, dentro de un nivel de bloque, fuera, donde sea, incluso fuera del body ¡Si quieres! Se procesarán igual, solo que sin el relleno / margen que se esperaría de los elementos a nivel de bloque.

En el Referencia de MDN para los elementos en línea, son siempre - en los doslos ejemplos se muestran: se muestran dentro de los elementos a nivel de bloque, pero eso no significa que no puedan estar solos, fuera de un elemento de bloque. Simplemente significa que, en general, no se realiza porque es semánticamente incorrecto, es decir, tiene elementos de nivel de bloque que contienen elementos en línea, no elementos en línea independientes.

Aunque técnicamente, el ejemplo que proporcionó no es un ejemplo de un elemento en línea fuera de un elemento de bloque porque el body Es un elemento de bloque.