我从来没有太多接触复杂的HTML表格。我需要一个嵌套列和行的表格。我尝试创建它,但是它有很多表,而且各种边框出现了。
这里是我尝试过的jsFiddle。
所以,我的目标是:
- 所有结构都在单个
<table>
标记中 - 不应出现多个边框。
- 所有结构都应该是一个单独的表格,调整页面大小时行不应分离。(这在我的情况下发生了)
我从来没有太多接触复杂的HTML表格。我需要一个嵌套列和行的表格。我尝试创建它,但是它有很多表,而且各种边框出现了。
这里是我尝试过的jsFiddle。
所以,我的目标是:
<table>
标记中这是您想要的结构,不要将宽度设为百分比值,以避免在页面调整大小时失去形状。
<table border="1" width="800" height="100">
<tr>
<th colspan="7"></th>
<th></th>
</tr>
<tr>
<td colspan="7"></td>
<td></td>
</tr>
<tr>
<td rowspan="3"></td>
<td></td>
<td colspan="3"></td>
<td></td>
<td colspan="2"></td>
</tr>
<tr>
<td rowspan="2"></td>
<td rowspan="2"></td>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td colspan="2"></td>
</tr>
</table>
rowspan
和colspan
的游戏。学到了新东西。非常感谢 :) - trex实际上,只使用一个表格无法得到精确的结果。你有一些单元格仅出现在另一个单元格的一半高度或宽度上。这就是不起作用的地方。
所以我为您设计了这个结构,它尽可能接近要求的效果:
<table>
<colgroup>
<col width="3%" span="2" />
<col width="10%" />
<col width="3%" />
<col width="18%" />
<col width="*" span="2" />
</colgroup>
<tr>
<td colspan="6">x</td>
<td>x</td>
</tr>
<tr>
<td colspan="6">x</td>
<td>x</td>
</tr>
<tr>
<td rowspan="3">x</td>
<td>x</td>
<td colspan="3">x</td>
<td>x</td>
<td>x</td>
</tr>
<tr>
<td rowspan="2">x</td>
<td>x</td>
<td>x</td>
<td>x</td>
<td>x</td>
<td>x</td>
</tr>
<tr>
<td>x</td>
<td>x</td>
<td>x</td>
<td>x</td>
<td>x</td>
</tr>
</table>
span="2"
是做什么用的? - trexcolgroup
和 col
标签,您可以为列定义样式。因此 <col width="3%" span="2%" />
表示列应为 3% 宽度,并且它应跨越两列,在这种情况下是前两列。 - GreyRoofPigeon他为什么想要那样的表格?扔块石头打他吧。
无论如何,不要使用 border: xx xxx xxx
,尽量使用 border-bottom、border-right,这样可以减少线条的数量。
添加间歇性的背景颜色和鼠标悬停效果,也许会使其更加可接受。
否则,我不知道。祈祷吧。