第六十三节,html表格元素

时间:2022-08-03 21:39:16

html表格元素

学习要点:

    1.表格元素总汇

    2.构建表格解析

    本章主要探讨HTML5中表格元素的用法。表格的主要用途是以网格的形式显示二维数据。

一.表格元素总汇

    表格的基本构成最少需要三个元素:<table>、<tr>、<td>,其他的一些作为可选辅 助存在。

        元素名称                                  说明

          table        表示表格

          thead       表示标题行

          tbody       表示表格主体

          tfoot        表示表脚

           tr          表示一行单元格

           th           表示标题行单元格

           td            表示单元格

           col          表示一列

        colgroup   表示一组列

         caption     表示表格标题

二.构建表格解析

1.<table><tr><td>构建基础表格

<table border="1">
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</table>

效果:

张三 未婚
李四 已婚

 

解释:<table>元素表示一个表格的声明,<tr>元素表示表格的一行,<td>元素表示一个单元格。默认情况下表格是没有边框的,所以,在<table>元素增加一个border属性,设置为1即可显示边框。

2.<th>为表格添加标题单元格

<table border="1" style="width:300px;">
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</table>

效果:

姓名 性别 婚姻
张三 未婚
李四 已婚

   

解释:<th>元素主要是添加标题行的单元格,实际作用就是将内部文字居中且加粗,这里使用了一个通用属性style,主要用于CSS样式设置,以后会涉及到。<th><td>均属于单元格,包含两个合并属性:colspan横向合并、rowspan纵向合并等。

colspan横向合并单元格,也就是向左合并

<table border="1" style="width:300px;">
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
<tr>
<td colspan="3">共计</td> <!--注意这个colspan横向合并3,表示合并共站表格数-->
</tr>
</table>

效果:

姓名 性别 婚姻
张三 未婚
李四 已婚
共计

rowspan纵向合并,也就是向下合并

<table border="1" style="width:300px;">
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tr>
<td>李四</td>
<td rowspan="2">女</td> <!--注意这个rowspan纵向合并2,表示合并共站表格数-->
<td rowspan="2">已婚</td>
</tr>
<tr>
<td>共计</td>
</tr>
</table>

效果:

姓名 性别 婚姻
张三 未婚
李四 已婚
共计

注意:合并只能操作单元格,<th><td>均属于单元格

3.<thead>添加表头

<table border="1" style="width:300px;">
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束-->
</table>

效果:

姓名 性别 婚姻
张三 未婚
李四 已婚

解释:<thead>元素就是限制和规范了表格的表头部分。尤其是以后动态生成表头,它的位置是不固定的,使用此元素可以限定在开头位置。

4.<tfoot>添加表脚

<table border="1" style="width:300px;">
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
<tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束--> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束-->
</table>

效果:

姓名 性别 婚姻
张三 未婚
李四 已婚

解释:<tfoot>元素为表格生成表脚,限制在表格的底部。

5.<tbody>添加表主体

<table border="1" style="width:300px;">
<tbody> <!--添加表主体开始,也就是主体部分用<tfoot>元素包起来,声明是表主体,无论表主体代码在表单什么位置,它始终显示在表单主体部-->
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
</tbody> <!--添加表主体结束--> <tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束--> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束-->
</table>

解释:<tbody>元素主要是包含住非表头表脚的主体部分,有助于表格格式的清晰,更加有助于后续CSS  JavaScript的控制。

表单头、主体、尾部正确格式化

<table border="1" style="width:300px;">
<thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束--> <tbody> <!--添加表主体开始,也就是主体部分用<tfoot>元素包起来,声明是表主体,无论表主体代码在表单什么位置,它始终显示在表单主体部-->
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
</tbody> <!--添加表主体结束--> <tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束-->
</table>

6.<caption>添加表格标题

<table border="1" style="width:300px;">
<caption>这是一个人物表</caption> <!--添加表格标题--> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束--> <tbody> <!--添加表主体开始,也就是主体部分用<tfoot>元素包起来,声明是表主体,无论表主体代码在表单什么位置,它始终显示在表单主体部-->
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
</tbody> <!--添加表主体结束--> <tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束-->
</table>

效果:

这是一个人物表
姓名 性别 婚姻
张三 未婚
李四 已婚

解释:<caption>元素给表格添加一个标题。

7.<colgroup>设置列

<table border="1" style="width:300px;">
<caption>这是一个人物表</caption> <!--添加表格标题-->
<colgroup span="1" style="background:red;"></colgroup> <!--设置列-->
<colgroup span="1" style="background:#2B2B2B;"></colgroup> <!--设置列--> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束--> <tbody> <!--添加表主体开始,也就是主体部分用<tfoot>元素包起来,声明是表主体,无论表主体代码在表单什么位置,它始终显示在表单主体部-->
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
</tbody> <!--添加表主体结束--> <tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束-->
</table>

效果:

第六十三节,html表格元素

 解释:<colgroup>元素是为了处理某个列,span属性定义处理哪些列。1表示第一列,2表示前两列。如果要单独设置第二列,那么需要声明两个,先处理第一个,将列点移入第二位,再处理第二个即可。

8.<col>更灵活的设置列

<table border="1" style="width:300px;">
<caption>这是一个人物表</caption> <!--添加表格标题-->
<colgroup>
<col> <!--不需要设置的列,可以用col当做占位符-->
<col style="background:red;" span="1">
</colgroup> <!--设置列--> <thead> <!--添加表头开始,也就是表头部分用<thead>元素包起来,声明是表头,无论表头代码在表单什么位置,它始终显示在表单头部-->
<tr>
<th>姓名</th>
<th>性别</th>
<th>婚姻</th>
</tr>
</thead> <!--添加表头结束--> <tbody> <!--添加表主体开始,也就是主体部分用<tfoot>元素包起来,声明是表主体,无论表主体代码在表单什么位置,它始终显示在表单主体部-->
<tr>
<td>张三</td>
<td>男</td>
<td>未婚</td>
</tr>
</tbody> <!--添加表主体结束--> <tfoot> <!--添加表尾开始,也就是表尾部分用<tfoot>元素包起来,声明是表尾,无论表尾代码在表单什么位置,它始终显示在表单尾部-->
<tr>
<td>李四</td>
<td>女</td>
<td>已婚</td>
</tr>
</tfoot> <!--添加表尾结束-->
</table>

效果:

第六十三节,html表格元素

解释:<colgroup>的子标签,<col>元素表示单独一列,一个表示一列,控制更加灵活。如果设置了span则,控制多列。