我有一个包含 p 的跨度,如下所示:
<span>
<p>this is the p</p>
</span>
根据 HTML5 规范,这是不允许的。现在,我的 HTML 比上面的更复杂,我需要类似于 ap 的东西来代替。我可以使用哪个标签或者我可以使用 css 更改哪个元素,使其表现得像 ap?
p
有一个意义。
如果您的内容符合p
的定义,则应使用p
. 那么你应该使用 adiv
而不是 a span
(除非没有其他合适的候选人):
<div>
<p>…</p>
</div>
如果您的内容与 的定义不匹配p
,则不应使用p
. 然后你可以使用span
代替p
(如果没有其他合适的候选人):
<span>
<span>…</span>
</span>
span
并且div
没有意义。所以你只需要考虑它们在语法上的位置(块与内联)。您可以在不丢失/更改任何语义的情况下交换它们:
<div>
<span>…</span>
</div>
<div>
<div>…</div>
</div>
请注意,所有这些都与这些元素的样式无关。您可以使用 CSS 设置块级元素的样式,使其显示为内联,反之亦然:display:inline;
resp。display:block;
.