cell跨越动态生成的表的所有列

时间:2011-09-08 12:51:57

标签: html internet-explorer

对于我的应用程序中的显示页面,我生成了几个动态表,其列数根据特定的业务逻辑而变化。但是,我需要有一个跨越整个表格的“标题”行。

根据the top-voted answer here中的建议,我将colspan设置为100%。这在我开发时很有效(使用opera进行调试),但是在IE8中测试显示它并不适用于所有浏览器:

without compatibility view - column is not the correct width http://i54.tinypic.com/nobx9l.jpg

有趣的是,它在兼容性视图中运行良好(这几乎与它在歌剧中的显示方式相同):

compatibility view - displays correctly http://i54.tinypic.com/2hx0lub.jpg

目前我的文档看起来有点像这样:

  <table>
    <tr class="head">
      <th colspan="100%">Circuit Ex Circuit 9</th>
    </tr>
    <!-- and so on, for all rows -->
  </table>

所以,不是一个HTML大师(更不用说一个IE大师了),我对这个问题感到困惑。如何解决此问题以处理IE上的全表范围?


编辑 - 我不确定为什么我的问题有如此低的观点,甚至没有人评论过 - 我可以对此使用任何帮助,请...

1 个答案:

答案 0 :(得分:0)

好吧,你的另一个问题似乎是问如何在HTML中解决它,以便将javascript作为另一个选项。

如果您使用javascript填充表格,那么您应该能够使用javascript计算列数,然后适当地设置第一行的colspan。我不知道你是什么形式的表格,如果它已经是HTML,那么你可能最好将表格放入你的页面,然后计算第一行中的列数,然后添加一个新的第一行你的标题。

如果数据是以某种对象表类型结构(例如2d数组)形式出现的,那么您应该能够计算列数,然后生成具有正确colspan的标题行。

或者,如果表是固定宽度(我假设它不是),那么你可以将表头单元格放在具有设置宽度的div的表格之外,并使你想要的格式匹配。