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