对于我的应用程序中的显示页面,我生成了几个动态表,其列数根据特定的业务逻辑而变化。但是,我需要有一个跨越整个表格的“标题”行。
根据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上的全表范围?
编辑 - 我不确定为什么我的问题有如此低的观点,甚至没有人评论过 - 我可以对此使用任何帮助,请...
答案 0 :(得分:0)
好吧,你的另一个问题似乎是问如何在HTML中解决它,以便将javascript作为另一个选项。
如果您使用javascript填充表格,那么您应该能够使用javascript计算列数,然后适当地设置第一行的colspan。我不知道你是什么形式的表格,如果它已经是HTML,那么你可能最好将表格放入你的页面,然后计算第一行中的列数,然后添加一个新的第一行你的标题。
如果数据是以某种对象表类型结构(例如2d数组)形式出现的,那么您应该能够计算列数,然后生成具有正确colspan的标题行。
或者,如果表是固定宽度(我假设它不是),那么你可以将表头单元格放在具有设置宽度的div的表格之外,并使你想要的格式匹配。