body元素是块级元素还是行内元素?

4
我在MDN上查找了有关HTML body元素是块级还是内联级元素的任何迹象: 内联元素 / 块级元素 除此之外,这两个链接都没有提到body元素,只有以下内容:
块级元素只能出现在< body >元素内。
3个回答

6

2
这应该成为被接受的答案——因为无论旧的 HTML4 规范说了什么都已经不再相关,也不再具有任何权威性;相反,现行的 HTML 规范(HTML5)所规定的才是最重要的。(正如这个答案所提到的,“块状”和“内联”现在只在 CSS display 属性中作为样式值有意义,它们在 HTML 本身中已经没有意义了。) - sideshowbarker

4

1
通常的规则(也就是HTML4的做法):由于它不仅可以容纳文本,还可以容纳块元素,因此它是一个块级元素。
但自从HTML5推出以来,现在有一些例外情况,比如允许将锚点包裹在几乎任何东西周围。

CSS允许内联元素包含块。 - Oriol
但是HTML不会这样做,对吧?至少作为一个经验法则。我能想到的唯一元素是锚点。 - DanMan
是的,你说得对。MDN关于块级元素的部分解释如下:““块级”类别大致对应于HTML5中的流内容类别,而“行内”对应于词组内容,但还有其他类别。” MDN关于块级元素的页面并没有将body元素列入其中(这里)。 - user3006493
HTML不再具有块和内联的概念。是的,a是默认情况下内联元素的示例,它可以包含默认情况下的块元素。但是您也可以使用display: inlinediv进行样式设置,它现在将成为内联元素,而HTML并不关心这一点,因此仍然可以包含默认情况下的块元素。 - Oriol
1
在 HTML5 之前,您可以使用 div 进行操作。这与样式无关。有规则规定一个元素可以包含哪些元素,就像一个 tr 只能包含 td 元素一样。 - DanMan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接