为什么不一样

时间:2011-09-09 02:47:44

标签: html css html-table

我用一个TD和一个colspan属性替换多个TD。

然而,这完全不同。

我看不出为什么 <td></td><td></td> <td colspan="2"></td>

不同

我的问题是前2个TD的宽度之和与colspanned TD的宽度不同。所以我的细胞不排队。

这种情况发生在IE,FF和Safari中。

奖金问题:我是否可以使用任何样式以确保colspan列的宽度等于被替换的其他TD的宽度之和?

为什么我这样做?我正在尝试减少DevExpress XtraReports生成的HTML数量,它使用数千个小TD来定位元素。它使HTML多次膨胀,所以我在将HTML发送到浏览器并进行一些基本的搜索/替换之前捕获HTML。我知道这是一个黑客攻击。

4 个答案:

答案 0 :(得分:7)

第一个示例将有两组边距,填充,css规则等。第二个示例仅应用了一组规则,但应用于适合两列的元素。

答案 1 :(得分:1)

发布您的代码。否则它可能是任何东西。但下面的超级简单的东西可以工作。

这将创建一个包含两行的表。第一行有3列。第二行有2列,第一行占两列。

<table border="1">
<tr>
<td>Something</td>
<td>Something</td>
<td>Something</td>
</tr>
<tr>
<td colspan=2>Something2</td>
<td>Something</td>
</tr>
</table>

答案 2 :(得分:0)

我当然可以看到多个tds因列间距而呈现不同的位置。验证这一点的一种方法是强制桌面上的边框(例如)。这应该会引导你朝某个方向前进。

答案 3 :(得分:0)

您必须使用样式设置宽度。这几乎是唯一的方法。但是,你可能只使用指定宽度的DIV。更多控制。

表格用于数据。我曾经是一个桌上狂热者。一旦我掌握了CSS的布局,我很少使用表格,除非我想要改变宽度。这是表格很酷的东西 - 它们会根据数据很好地填写。

我从未见过显示比上/下更宽或更窄的显示。除非代码中有错误。发布它,我们将看到我们能做什么。你到底想要实现这一切的目的是什么?