我有一个看起来像这样的表(在 html 中):
<div id="product_grid_one">
<table>
<tr>
<td>
<div class="productimage"><img src="images/perfume.jpg" alt="Product Image" /></div>
<div class="productdescription"><p>Perfume spray bottle</p></div>
<div class="productprice"><p>$4.99</p></div>
</td>
<td>
<div class="productimage"><img src="images/perfume.jpg" alt="Product Image" /></div>
<div class="productdescription"><p>Perfume spray bottle</p></div>
<div class="productprice"><p>$4.99</p></div>
</td>
<td>
<div class="productimage"><img src="images/perfume.jpg" alt="Product Image" /></div>
<div class="productdescription"><p>Perfume spray bottle</p></div>
<div class="productprice"><p>$4.99</p></div>
</td>
<td>
<div class="productimage"><img src="images/perfume.jpg" alt="Product Image" /></div>
<div class="productdescription"><p>Perfume spray bottle</p></div>
<div class="productprice"><p>$4.99</p></div>
</td>
</tr>
</table>
</div>
这是它的CSS:
td { width: px; padding: 14px; border: 1px solid #c0c0c0; margin: 14px; }
基本上有一排有四个单元格。每个单元格都有一个垂直堆叠的图像、产品的文本描述和产品价格。现在,在这个三件套堆栈周围,我希望我的 td 元素(我认为它可以被视为一个块)有一个 14px 的填充,我可以设置它没有问题,这样就有一个 1px 的边框距离 14px一堆图像、文本和价格。到这里都没问题。
问题是上面没有设置边距!!@
我可以设置边距:200px;仍然没有区别,边距约为 1 或 2 个像素,似乎无法改变这一点。我已经在 Firefox 13.0.1 上试过了。
那么,如何设置边距?我希望表中每个 td 之间有 14 px。
这可以通过 CSS 实现吗?
建议使用表格的 cellspacing 属性。所以我可以使用以下等效的 CSS:
table { border-collapse: separate; border-spacing: 14px; }
但这对我没有好处,因为我希望仅在表格内应用边框间距。我不希望整个表格的两侧(左侧或右侧)有任何间距。有什么解决办法吗?
好吧,我终于能够找到解决方案。我设法用负边距解决了这个问题,以便表格在表格周围添加的边框间距(除了在各种表格数据和表格标题之间)在向左移开时不会变得可见通过使用具有负值的左边距。
table { border-collapse: separate; border-spacing: 13px; margin-left: -13px; }