带<span>
的{{1}}元素是否能够拥有高度,宽度,填充等,而无需将其更改为position: absolute;
或display: block;
?
它似乎有效,但所有浏览器都可以省略inline-block;
display: block/inline-block
元素<span>
吗?
答案 0 :(得分:4)
简答:是的。
答案很长:见http://www.w3.org/TR/CSS21/visuren.html#dis-pos-flo(或SLaks的答案)。
Hovewer,此更改仅指元素的可视显示模型。 CSS不会影响HTML元素的content model,因为只有在将文档解析为DOM树之后才应用CSS。因此span
元素永远不会有p
或div
个子元素,无论应用哪种格式。
答案 1 :(得分:3)
规范says yes:
否则,如果'position'的值为'absolute'或'fixed',则该框绝对定位,'float'的计算值为'none',并根据下表设置显示。框的位置将由“顶部”,“右侧”,“底部”和“左侧”属性以及框的包含块确定。
该表说明任何内联display
值(内联,表行组,表 - 列,表 - 列 - 组,表 - 标题 - 组,表 - 页脚 - 组,表 - 行, table-cell,table-caption,inline-block)变为block
。
答案 2 :(得分:0)
<div>
元素是非内联,而<span>
元素是<{1}}元素。这是绝对位置的定义:绝对 - 元素相对于其第一个定位(非静态)祖先元素定位。因此,您的问题的答案是肯定的:带有显示的span元素:块显示为有些块级元素。如果您仍需要澄清,请告诉我。