3

为什么不能<span>有负的垂直边距或填充?

如果我将它设置为display: block,它仍然不起作用。

4

2 回答 2

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'

...

与边距属性不同,填充值的值不能为负数。

于 2012-11-24T03:56:54.940 回答
3

也许您的浏览器不支持此功能?负边距span是可能的。这样一个简单的例子在 Firefox 和 Chrome 中对我有用:

<span style="display:block; margin-left:-20px;">My text.</span>
于 2012-11-24T00:48:38.677 回答