首页 文章

有没有块级父级的内联元素是否有效?

提问于
浏览
0

我想知道HTML文档中的内联元素是否在技术上需要块级父元素 . 例如,以下 HTML ...

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

这是一个有效的HTML文档吗?或者 <b></b> 标签是否必须封装在块级元素中才能被视为有效,如 <p><div> ? (希望HTML4和HTML5的答案是一样的吗?)

很多人问一个类似的问题:我可以在内联元素中放置一个块级元素吗?我想知道相反的情况:除了HTML文档中的块级元素之外,内联元素可以去任何地方吗?

我在RFC中看到了这一点:

某些可能出现在BODY中的HTML元素被称为“块级”,而其他HTML元素则是“内联”(也称为“文本级别”)....通常,块级元素可能包含内联元素和其他块级元素 . 通常,内联元素可能只包含数据和其他内联元素 . https://www.w3.org/TR/html401/struct/global.html#h-7.5.3

但是,它并没有完全说出来 .

1 回答

  • 0

    您可以将内联元素放置在块级别内的任何位置,外部,任何地方,甚至在 body 之外,如果您愿意的话!它们将呈现相同的效果,只有没有任何填充/边距,你可以期望块级元素 .

    在内联元素的MDN reference中,它们总是 - 在两个示例中给出 - 显示在块级元素内部,但是在块元素之外并不是单独的 . 它只是意味着它通常没有完成,因为它在语义错误 - 即,你有块级元素包含内联元素,而不是单独的内联元素 .

    虽然从技术上讲,您提供的示例不是块元素外部的内联元素的示例,因为 body 是块元素 .

相关问题