一尘不染

将块级元素嵌套在标签...对还是错?

html

<div><p>标记内嵌套或任何其他块级元素在语法和语义上是否正确。我说的是HTML4过渡DTD。

如果不是,可以改为使用<span style="display: block">吗?


阅读 291

收藏
2020-05-10

共1个答案

一尘不染

在语法上,一个div里面p是HTML的所有标准无效。此外,当使用符合标准的HTML解析器时,由于开头标签会自动关闭元素,因此无法将<div>元素放置<p>在DOM中的a
内。<div>``<p>

从语义上来说,正确的选择取决于您要标记的内容。您将需要至少显示一个示例完整的段落以及可能包含其周围的内容,以确保提供足够的信息来确定正确的语义标记。

但是,鉴于<div><span>都没有语义,并且CSS决不会改变它,如果您确定<p>标记的内容确实构成了一个段落,并且可以<span style="display: block">得到想要的呈现效果,那么是有效的HTML,将是一个完全合适的解决方案。

2020-05-10