table表格跨行跨列与合并排版的讲解与示例

时间:2021-11-25
类别:教程 - 网页设计

因为要做个网站,里面的内容除了大段文字之外,还有大量的表格,这就发现了表格排版的问题。

一般简单的表格,例如:

一般简单的表格

这种形式就比较简单,只要简单地将<tr></tr><td></td>(或者<th></th>就行了

代码如下:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a target=_blank href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"
  2.  
  3. <html xmlns="<a target=_blank href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>"> 
  4.  
  5. <head> 
  6.  
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
  8.  
  9. <title>无标题文档</title> 
  10.  
  11. <style> 
  12.  
  13. td{width:200px; 
  14.  
  15.    height:100px; 
  16.  
  17.    border:#000 2px solid; 
  18.  
  19.    margin:0px; 
  20.  
  21.    padding:0px; 
  22.  
  23.  
  24. </style> 
  25.  
  26. </head></p><p><body> 
  27.  
  28. <table> 
  29.  
  30. <tr> 
  31.  
  32. <td></td> 
  33.  
  34. <td></td> 
  35.  
  36. <td></td> 
  37.  
  38. </tr> 
  39.  
  40. <tr> 
  41.  
  42. <td></td> 
  43.  
  44. <td></td> 
  45.  
  46. <td></td> 
  47.  
  48. </tr> 
  49.  
  50. <tr> 
  51.  
  52. <td></td> 
  53.  
  54. <td></td> 
  55.  
  56. <td></td> 
  57.  
  58. </tr> 
  59.  
  60. </table> 
  61.  
  62. </body> 
  63.  
  64. </html> 

但是到了一些比较错落的就需要用到colspan(跨列)和rowspan(跨行)了。

colspan(跨列)和rowspan(跨行)就是表面意思,也可以看为行列合并。

colspan(跨列):

colspan(跨列)

上图中红色部分即为此格已跨两列。

代码如下(仅是部分代码):

  1. <table> 
  2.  
  3. <tr> 
  4.  
  5. <td colspan="2" style="background:#F00"></td> 
  6.  
  7. <td></td> 
  8.  
  9. </tr> 
  10.  
  11. <tr> 
  12.  
  13. <td></td> 
  14.  
  15. <td></td> 
  16.  
  17. <td></td> 
  18.  
  19. </tr> 
  20.  
  21. <tr> 
  22.  
  23. <td></td> 
  24.  
  25. <td></td> 
  26.  
  27. <td></td> 
  28.  
  29. </tr> 
  30.  
  31. </table> 

如果想要如此工整的表格,就必须先预算在要跨列的格所在行以下的行中含有最多格子的行的格子数是多少,决定了跨列格要跨的格数。

以上图举例,第二行和第三行的格子数均为3,所以想要形成上图的效果,第一行第一列就想要横跨两列,所以colspan="2"

rowspan(跨行)的方法与colspan(跨列)类似。

rowspan(跨行)与colspan(跨列)同时出现的例子:

rowspan(跨行)与colspan(跨列)

代码如下(仅是部分代码):

  1. <table> 
  2.  
  3. <tr> 
  4.  
  5. <th></th> 
  6.  
  7. <th colspan="5"></th> 
  8.  
  9. </tr> 
  10.  
  11. <tr> 
  12.  
  13. <th></th> 
  14.  
  15. <th <span style="color:#000000;">colspan</span>="3"></th> 
  16.  
  17. <th></th> 
  18.  
  19. <th></th> 
  20.  
  21. </tr> 
  22.  
  23. <tr> 
  24.  
  25. <th></th> 
  26.  
  27. <th></th> 
  28.  
  29. <th></th> 
  30.  
  31. <th></th> 
  32.  
  33. <th></th> 
  34.  
  35. <th></th> 
  36.  
  37. </tr> 
  38.  
  39. <tr> 
  40.  
  41. <th rowspan="3"></th> 
  42.  
  43. <th></th> 
  44.  
  45. <th colspan="2"></th> 
  46.  
  47. <th></th> 
  48.  
  49. <th></th> 
  50.  
  51. </tr> 
  52.  
  53. <tr> 
  54.  
  55. <th></th> 
  56.  
  57. <th colspan="2"></th> 
  58.  
  59. <th></th> 
  60.  
  61. <th></th> 
  62.  
  63. </tr> 
  64.  
  65. <tr> 
  66.  
  67. <th></th> 
  68.  
  69. <th colspan="2"></th> 
  70.  
  71. <th></th> 
  72.  
  73. <th></th> 
  74.  
  75. </tr> 
  76.  
  77. </table> 
  78.  
  79. <table> 
  80.  
  81. <tr class="zj"
  82.  
  83. <th rowspan="4"></th> 
  84.  
  85. <th colspan="8"></th> 
  86.  
  87. </tr> 
  88.  
  89. <tr> 
  90.  
  91. <th></th> 
  92.  
  93. <th></th> 
  94.  
  95. <th></th> 
  96.  
  97. <th></th> 
  98.  
  99. <th></th> 
  100.  
  101. <th></th> 
  102.  
  103. <th></th> 
  104.  
  105. <th></th> 
  106.  
  107. </tr> 
  108.  
  109. <tr> 
  110.  
  111. <th></th> 
  112.  
  113. <th colspan="4"></th> 
  114.  
  115. <th></th> 
  116.  
  117. <th colspan="2"></th> 
  118.  
  119. </tr> 
  120.  
  121. <tr> 
  122.  
  123. <th></th> 
  124.  
  125. <th colspan="7"></tr> 
  126.  
  127. </table> 
    收藏