<div>
标签用于对块元素进行分组
。标签用于对内联元素进行分组
。<span>
哪个 HTML 标签适合对 inline-block 元素进行分组?<div>
或<span>
其他什么?为什么?
您最初的假设是:
<div>
标签用于对块元素进行分组。标签用于对内联元素进行分组
。<span>
是不正确的。
该
div
元素根本没有特殊含义。它代表它的孩子。它可以与 class、lang 和 title 属性一起使用,以标记一组连续元素共有的语义。
span
元素本身没有任何意义,但与全局属性(例如类、语言或目录)一起使用时会很有用。它代表它的孩子。
重要的区别在于div
元素具有流式内容的内容模型,而span
元素具有短语内容的内容模型。父元素的内容模型定义了父元素可能包含的子元素。
子元素是否为 无关紧要display: inline-block
,如果子元素不属于适当的内容模型,则可能无法有效地放置在父元素中。
Because of browser comparability issues with inline-block
(IE6,IE7) and the need to apply the fix of *display:inline; zoom:1;
to get them to wotk on block
elements..
I would go with <span>
, because even IE6 % IE7 support inline-block
when its applied to inline
elements. (the fix is needed for block
elements like <div>
)
根据 HTML 规范,<span>
它是一个内联元素并且<div>
是一个块元素。现在可以使用 display CSS 属性进行更改,但是有一个问题:就HTML 验证而言,您不能将块元素放在内联元素中,因此:
<span>...<div>foo</div>...</span>
即使您将 更改为内联或内联块,也不是严格有效的。
因此,如果您的元素是 inline 或inline-block ,请使用<span>
. 如果它是块级元素,请使用<div>
.
祝你好运!