为什么<span>
不能有负的垂直边距或填充?
如果我将其设置为display: block
,它仍然无效。
答案 0 :(得分:4)
来自CSS 2.1规范:
默认情况下,8.3保证金属性:'margin-top','margin-right','margin-bottom','margin-left'和'margin'
边距属性指定框的边距区域的宽度。该 'margin'速记属性为所有四方设定了保证金 其他保证金属性仅设定各自的一面。这些 属性适用于所有元素,但垂直边距不会 对未替换的内联元素的任何影响。
<span>
是未替换的内联元素。
另外
8.4填充属性:'padding-top','padding-right','padding-bottom','padding-left'和'padding'
...
与margin属性不同,padding值的值不能 负
答案 1 :(得分:2)
也许您的浏览器不支持此功能?
span
的负余量是可能的。这个简单的例子适用于Firefox和Chrome:
<span style="display:block; margin-left:-20px;">My text.</span>