"The web技术(尤其是前端技术)发展得如此之快,以至于我每年都必须重新学习它,这次似乎是一个非常简单的问题:为什么
具有display:block属性?传统上,我们直接在HTML 4中定义块和内联级元素,但HTML5用流内容和短语内容等概念取代了它,根据MDN的说法,这将这一呈现特性留给CSS。这符合关注点分离原则,因此这一做法非常合理。"
但是CSS3在
但是CSS3在
元素的默认样式在 HTML5 规范的 Rendering 部分中进行了描述。
浏览器不一定需要遵循那里描述的规则才能符合标准,但在大多数情况下,它们确实会这样做。对于像 div
这样已经被广泛使用的元素,不遵循这些规则是没有意义的。
div
元素属于一个被设置为 display:block
的 流内容 集合。
address, blockquote, center, dialog, div, figure, figcaption, footer, form,
header, hr, legend, listing, main, p, plaintext, pre, xmp {
display: block;
}
需要注意的是,其中几个元素已经过时 - center
、listing
、plaintext
和 xmp
。它们不应该被作者使用,但仍定义了它们的渲染方式,以便旧的网页文档仍然可以正确呈现。
div
元素被期望为display:block
。 - Alohci