table表格的使用(表格的嵌套、合并)

本文详细介绍了HTML表格的基本结构,包括定义表格、行和列,以及如何使用border、width、height、align和背景属性进行定制。此外,涵盖了合并列和行的方法,以及表格嵌套的实例。掌握这些技巧有助于提升网页布局的灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

表格基本格式

<table>
//第一行
<tr>
<td>第一列</td>
<td>第二列</td>
</tr>
//第二行
<tr>
<td>第一列</td>
<td>第二列</td>
</tr>
</table>

1.<table></table>:定义一张表格

2.<tr></tr>:定义行

3.<td></td>:定义列

4.<thead>:定义表格头部

5.<tbody>:定义表格主体

6.<tfoot>:定义表格尾部

表格中的几种属性

1.border="1":不加此属性则不会显示边框。取值为正整数,数值越大,边框越粗。

2.width="100":设置表格的宽度

3.height="100":设置表格的高度

4.align="center":表格对齐方式,center:居中对齐,left:向左对齐,right:向右对齐

5.bgcolor="":表格背景颜色

6.background="(url)":背景图片

7.cellpadding="":表格中每个格子的内边距(即文字等元素与格子边框之间的距离)

    举例:

<table border="1" cellpadding="10">
<!--    第一行-->
    <tr>
        <td>第一列</td>
        <td>第二列</td>
    </tr>
<!--    第二行-->
    <tr>
        <td>第一列</td>
        <td>第二列</td>
    </tr>
</table>

 cellpadding="10":内边距设置为10像素时

 

 cellpadding="0":内边距设置为0像素时

 

8.cellspacing="":表格中每个格子的外边距(即小格子与整体表格边框之间的距离)

     举例:

<table border="1" cellspacing="10">
<!--    第一行-->
    <tr>
        <td>第一列</td>
        <td>第二列</td>
    </tr>
<!--    第二行-->
    <tr>
        <td>第一列</td>
        <td>第二列</td>
    </tr>
</table>

   cellspacing="10":外边距设置为10像素时

   

   cellspacing="0":外边距设置为0像素时

表格的合并(列,行)

1.合并表格的列

<!--表格合并-->
<table border="1"width="300"cellpadding="0"cellspacing="0"align="center">
    <tr>
        <!-- colspan="2"合并两列-->
        <th colspan="2">&nbsp;</th>
    </tr>

    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>

    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>

</table>

样式:

2.合并表格的行

<!--表格合并-->
<table border="1"width="300"cellpadding="0"cellspacing="0"align="center">
    <tr>
        <th>&nbsp;</th>
        <th>&nbsp;</th>
    </tr>
    <tr>
        <!-- rowspan="2" 合并两行-->
        <td rowspan="2">&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>&nbsp;</td>
    </tr>
</table>

样式:

 

表格的嵌套

<!--表格嵌套-->
<table border="1"width="300"cellpadding="0"cellspacing="0">
    <tr>
        <td>
        <!--在第一行第一列中再嵌套一个表格(两行、两列的表格)-->
            <table border="1" width="100%">
                <tr>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                </tr>
                <tr>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                </tr>
            </table>

        </td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
</table>

样式:

要在 Angular 中使用 ng-zorro-antd 的 nz-table 组件合并表格,可以使用 nzSpanMethod 属性来指定合并规则。具体步骤如下: 1. 在组件中定义表格数据源 dataSource 和表格列定义 columns。 2. 在表格列定义中,对需要合并的列设置 nzSpanMethod 属性,该属性值为一个回调函数,用于计算该列每个单元格的合并行数和列数。 3. 在回调函数中,可以通过参数 row 和 column 获取当前单元格所在的行和列,然后根据业务需求计算出该单元格需要合并的行数和列数。 示例代码如下: ``` <ng-container *ngFor="let col of columns"> <th *ngIf="!col.children" [nzWidth]="col.width || ''" [nzLeft]="col.left || ''" [nzRight]="col.right || ''" [nzAlign]="col.align || 'center'" [nzVerticalAlign]="col.verticalAlign || 'middle'" [nzSpanMethod]="col.spanMethod"> {{ col.title }} </th> <th *ngIf="col.children" [nzColSpan]="col.colSpan" [nzRowSpan]="col.rowSpan"> {{ col.title }} </th> </ng-container> ``` 其中,columns 数组中的每个元素表示一个表格列定义,具体属性如下: - title:列标题。 - width:列宽度。 - left:左侧距离。 - right:右侧距离。 - align:水平对齐方式。 - verticalAlign:垂直对齐方式。 - children:子列定义,用于实现表头多级嵌套。 - colSpan:列合并数。 - rowSpan:行合并数。 - spanMethod:合并规则回调函数。 合并规则回调函数的参数如下: - row:当前单元格所在的行。 - column:当前单元格所在的列。 回调函数需要返回一个对象,包含以下属性: - rowspan:合并的行数。 - colspan:合并的列数。 示例代码如下: ``` spanMethod(row: any, column: any): { rowspan: number, colspan: number } { if (column.key === 'name') { if (row.id === 1) { return { rowspan: 2, colspan: 1 }; } else if (row.id === 3) { return { rowspan: 2, colspan: 1 }; } } return { rowspan: 1, colspan: 1 }; } ``` 以上代码实现了对 name 列的合并,当该列的值为 'John' 或 'Lucy' 时,将该单元格合并到下一行;当该列的值为 'Tom' 或 'Jerry' 时,将该单元格合并到上一行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IABQL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值