第六十三节,html表格元素


html表格元素

学习要点:

    1.表格元素总汇

    2.构建表格解析

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

一.表格元素总汇

    表格的基本构成最少需要三个元素:

,其他的一些作为可选辅 助存在。

        元素名称                                  说明

          table        表示表格

          thead       表示标题行

          tbody       表示表格主体

          tfoot        表示表脚

           tr          表示一行单元格

           th           表示标题行单元格

           td            表示单元格

           col          表示一列

        colgroup   表示一组列

         caption     表示表格标题

二.构建表格解析

1.

元素为表格生成表脚,限制在表格的底部。

 

5.

添加表主体

<table border="1" style="width:300px;">
    <tbody> 
        <tr>
            <td>张三td>
            <td>td>
            <td>未婚td>
        tr>
    tbody> 

    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 

    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 
table>

解释:

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

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

<table border="1" style="width:300px;">
    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 

    <tbody> 
        <tr>
            <td>张三td>
            <td>td>
            <td>未婚td>
        tr>
    tbody> 

    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 
table>

 6.

设置列

<table border="1" style="width:300px;">
    <caption>这是一个人物表caption> 
    <colgroup span="1" style="background:red;">colgroup> 
    <colgroup span="1" style="background:#2B2B2B;">colgroup> 

    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 

    <tbody> 
        <tr>
            <td>张三td>
            <td>td>
            <td>未婚td>
        tr>
    tbody> 

    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 
table>

效果:

  解释:

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

 

8.

更灵活的设置列

<table border="1" style="width:300px;">
    <caption>这是一个人物表caption> 
    <colgroup>
        <col> 
        <col style="background:red;" span="1">
    colgroup> 
    
    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 

    <tbody> 
        <tr>
            <td>张三td>
            <td>td>
            <td>未婚td>
        tr>
    tbody> 

    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 
table>

效果:

解释:

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

 

 

 

构建基础表格

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

效果:

张三 未婚
李四 已婚

 

解释:

元素表示一个表格的声明,元素表示表格的一行,元素就是限制和规范了表格的表头部分。尤其是以后动态生成表头,它的位置是不固定的,使用此元素可以限定在开头位置。

 

4.

添加表脚

<table border="1" style="width:300px;">
    <tr>
        <td>张三td>
        <td>td>
        <td>未婚td>
    tr>
    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 

    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 
table>

效果:

元素表示一个单元格。默认情况下表格是没有边框的,所以,在元素增加一个border属性,设置为1即可显示边框。

2.

添加表头

<table border="1" style="width:300px;">
    <tr>
        <td>张三td>
        <td>td>
        <td>未婚td>
    tr>
    <tr>
        <td>李四td>
        <td>td>
        <td>已婚td>
    tr>

    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 
table>

效果:

为表格添加标题单元格

<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>

效果:

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

 

 

   

 

解释:

元素主要是添加标题行的单元格,实际作用就是将内部文字居中且加粗,这里使用了一个通用属性style,主要用于CSS样式设置,以后会涉及到。均属于单元格,包含两个合并属性: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> 
    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> 
        <td rowspan="2">已婚td>
    tr>
    <tr>
        <td>共计td>
    tr>
table>

效果:

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

 

 

 

 

 

 

注意:合并只能操作单元格,

均属于单元格

 

3.

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

 

 

 

 

解释:

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

解释:

添加表格标题

<table border="1" style="width:300px;">
    <caption>这是一个人物表caption> 

    <thead> 
        <tr>
            <th>姓名th>
            <th>性别th>
            <th>婚姻th>
        tr>
    thead> 

    <tbody> 
        <tr>
            <td>张三td>
            <td>td>
            <td>未婚td>
        tr>
    tbody> 

    <tfoot> 
        <tr>
            <td>李四td>
            <td>td>
            <td>已婚td>
        tr>
    tfoot> 
table>

效果:

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

解释:

元素给表格添加一个标题。

 

7.