【发布时间】:2011-07-29 14:06:56
【问题描述】:
<div>、<form>、<pre> 等标签是否允许在 <span> 中使用?
【问题讨论】:
-
似乎是死链接。
-
@aetheria:here u go(非常酷的图形,我下载到我的电脑上:P)
-
@Alex:感谢上传。
<div>、<form>、<pre> 等标签是否允许在 <span> 中使用?
【问题讨论】:
span 元素是一个 inline 元素,它应该只包含其他 inline 元素,而不能包含 block 元素。
来自the spec:
通常,块级元素可以 包含内联元素和其他 块级元素。一般来说, 内联元素可能只包含数据 和其他内联元素。本质上 这种结构上的区别是 块元素创建的想法 比内联“更大”的结构 元素。
通用块级分组元素是div。通用的内联级分组元素是span。
再次,来自the spec:
DIV 和 SPAN 元素,在 结合 id 和 class 属性,提供通用机制 用于向文档添加结构。 这些元素将内容定义为 内联 (SPAN) 或块级 (DIV) 但 不强加其他表象习语 关于内容。
【讨论】:
should。如果您将 DIV 或任何其他块元素放入 SPAN,除非您真的关心根据规范进行验证,否则不会发生任何不好的事情。
display: block,它就会有效地变成另一个 div,你可以用它来过滤:)
根据HTML Living Standard,SPAN 元素的内容模型是“短语内容”。
了解 SPAN 元素 here。
阅读措辞内容here。第二个链接包含可以放入 SPAN 元素中的所有元素的完整列表。
【讨论】:
span 的 w3c 规范:w3.org/TR/html5/text-level-semantics.html#the-span-element 和 phrasing content:w3.org/TR/html5/content-models.html#phrasing-content
<span><p></p></span> 作为有效的 HTML 并认为它好像是 <span></span><p></p>