2013-07-22 89 views
0

我正在使用XSLT更改表格以承载来自设备的信息。除了我需要重新创建一个屏幕上的元素,这不是一个大问题。例如:表格单元格(td)中的Colspan移位单元格

----------- 
|   | 
| X  | 
|   | 
|   | 
|  XXX | 
|  XXX | 
|   | 
------------ 

此屏幕有例如2个元素。一个大小为1x1(不是问题),但是当大小为3x2时。当我更改这个单元格rowspan或colspan时,单元格移位并不会消失在colspan中。

所以这到底发生了什么:

----------- 
|   | 
| X  | 
|   | 
|   | 
|  XXX | 
|  XXX | 
|   | 
------ --| 
     --- 

代码
的一个实例想:

<TABLE border="1"> 
    <TBODY> 
     <TR style="height: 10px;"> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
      <TD COLSPAN="2" BGCOLOR="#9CC5C9">&nbsp;</TD> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
     </TR> 
     <TR style="height: 10px;"> 
      <TD BGCOLOR="#D5544F">&nbsp;</TD> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
     </TR> 
    </TBODY> 
</TABLE> 

http://jsfiddle.net/ju9dd/12/

任何人有任何想法如何解决这一问题?

+0

一些代码,将有助于 – Pete

+0

编辑后一些代码和的jsfiddle – Exitgo

+0

的原因,你的表坏了是因为列不匹配的数量,你的第一行有四列,你的第二个有三个。规则表中的一个 - 匹配每行中的单元格数 – Pete

回答

0

Colspan不会使邻近的细胞神奇地消失。你需要离开它。

正确代码:

<TABLE border="1"> 
    <TBODY> 
     <TR style="height: 10px;"> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
      <TD COLSPAN="2" BGCOLOR="#9CC5C9">&nbsp;</TD> 
     </TR> 
     <TR style="height: 10px;"> 
      <TD BGCOLOR="#D5544F">&nbsp;</TD> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
      <TD BGCOLOR="#CDB599">&nbsp;</TD> 
     </TR> 
    </TBODY> 
</TABLE> 
+0

我知道,但是我动态地创建了这个表。所以我有一个带有td和tr的表格,我想动态地删除将被元素覆盖的td和tr。 http://jsfiddle.net/9PxVK/3/ – Exitgo