在 HTML 中,表格合并通常使用 colspan 和 rowspan 属性来实现。这两个属性分别用于水平合并(列合并)和垂直合并(行合并)单元格。

1. colspan 属性(列合并)

colspan 属性用于将一个单元格跨越多列。通过指定该属性的值,表格单元格会横跨指定数量的列。

示例:水平合并单元格(使用 colspan

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>表格列合并</title>
</head>
<body>

<table border="1">
    <tr>
        <th>姓名</th>
        <th>年龄</th>
        <th>城市</th>
    </tr>
    <tr>
        <td>张三</td>
        <td>25</td>
        <td>北京</td>
    </tr>
    <tr>
        <td colspan="3">这是一个横跨3列的单元格</td> <!-- 横跨3列 -->
    </tr>
    <tr>
        <td>李四</td>
        <td>30</td>
        <td>上海</td>
    </tr>
</table>

</body>
</html>

解释:

  • 在第三行的单元格中,<td colspan="3"> 表示该单元格将横跨表格的 3 列。
  • 这样,表格中的单元格将合并为一个大单元格,显示文本 “这是一个横跨3列的单元格”。

2. rowspan 属性(行合并)

rowspan 属性用于将一个单元格跨越多行。通过指定该属性的值,表格单元格会竖向跨越指定数量的行。

示例:垂直合并单元格(使用 rowspan

&lt;!DOCTYPE html>
&lt;html lang="en">
&lt;head>
    &lt;meta charset="UTF-8">
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0">
    &lt;title>表格行合并&lt;/title>
&lt;/head>
&lt;body>

&lt;table border="1">
    &lt;tr>
        &lt;th>姓名&lt;/th>
        &lt;th>年龄&lt;/th>
        &lt;th>城市&lt;/th>
    &lt;/tr>
    &lt;tr>
        &lt;td rowspan="2">张三&lt;/td> &lt;!-- 跨越2行 -->
        &lt;td>25&lt;/td>
        &lt;td>北京&lt;/td>
    &lt;/tr>
    &lt;tr>
        &lt;td>30&lt;/td>
        &lt;td>上海&lt;/td>
    &lt;/tr>
    &lt;tr>
        &lt;td>李四&lt;/td>
        &lt;td>28&lt;/td>
        &lt;td>广州&lt;/td>
    &lt;/tr>
&lt;/table>

&lt;/body>
&lt;/html>

解释:

  • 在第一列的 “张三” 这个单元格上,使用了 rowspan="2",表示该单元格会跨越两行。
  • 这样,”张三” 的单元格会覆盖两行内容,而 “李四” 的内容则在接下来的行中。

3. 结合使用 colspan 和 rowspan

你还可以结合使用 colspan 和 rowspan,实现既横向合并列又纵向合并行的效果。

示例:同时使用 colspan 和 rowspan

&lt;!DOCTYPE html>
&lt;html lang="en">
&lt;head>
    &lt;meta charset="UTF-8">
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0">
    &lt;title>表格合并示例&lt;/title>
&lt;/head>
&lt;body>

&lt;table border="1">
    &lt;tr>
        &lt;th>姓名&lt;/th>
        &lt;th>年龄&lt;/th>
        &lt;th>城市&lt;/th>
    &lt;/tr>
    &lt;tr>
        &lt;td rowspan="2" colspan="2">张三&lt;/td> &lt;!-- 同时跨2行和2列 -->
        &lt;td>北京&lt;/td>
    &lt;/tr>
    &lt;tr>
        &lt;td>上海&lt;/td>
    &lt;/tr>
    &lt;tr>
        &lt;td>李四&lt;/td>
        &lt;td>28&lt;/td>
        &lt;td>广州&lt;/td>
    &lt;/tr>
&lt;/table>

&lt;/body>
&lt;/html>

解释:

  • 张三 的单元格同时使用了 rowspan="2" 和 colspan="2",即横跨 2 行和 2 列。
  • 这种方式可以让一个单元格同时占据多个行和列,适用于需要合并多个单元格的情况。

4. 总结

  • colspan 用于水平合并单元格,指定一个单元格跨越的列数。
  • rowspan 用于垂直合并单元格,指定一个单元格跨越的行数。
  • 这两个属性可以单独使用,也可以结合使用,以达到不同的表格布局效果。

5. 注意事项

  • 当使用 colspan 和 rowspan 时,合并后的单元格会影响其他单元格的位置。因此,设计表格时需要特别注意表格结构和对齐。
  • 表格的行和列数可能会因为合并操作而变化,因此要确保所有的单元格正确对齐。

通过这些属性,您可以在 HTML 中轻松实现复杂的表格布局,满足不同的展示需求。