不能在表格元素上使用负右边距?

时间:2012-10-18 12:35:12

标签: html css

我正在尝试在网格系统中使用table-cell元素,该系统利用行上的负边距来消除嵌套网格元素上的左右排水沟。这对浮动和内联块元素工作正常,但display: table元素虽然尊重负左边距,但忽略了负右边距:

Table with negative right margin

奇怪,是吗?一个简单的演示:http://jsfiddle.net/57FAN/1/

不幸的是,所有浏览器似乎都以相同的方式实现了这一点。有什么想法吗?

P.S。让我们推迟讨论table- *元素的布局,直到弹性框标准化为止。

2 个答案:

答案 0 :(得分:6)

该表不会忽略负边距,但宽度仅为100%,向左移动5px。你需要一个“100%+ 2 * 5px”来完全填充灰色区域。

该行没有宽度,因此使用整个可用宽度。

如果你愿意的话

.row {
  margin: 0 -5px;
  width: 100%;
}

你会看到宽度相等

答案 1 :(得分:0)

您的代码包含更多marginpadding属性。所以它看起来像那样。在这里,我更正了一些代码。

Fiddle DEMO