HTML表格

演讲者:whqet

内容提纲

  1. 表格简介
  2. 标签详解
  3. 表格案例

表格简介

表格不再用于布局页面,用于呈现网页数据

表格呈现多维的结构性数据

信息的可视化趋势,图化、表化

table元素

类型取值
分类 流内容-Flow content
可感知内容-Palpable content
元素上下文 需要流内容的地方
内容模型 按照下列顺序依次排列:
  1. 可选的caption元素
  2. 0~n个colgroup元素
  3. 可选的thead元素
  4. 可选的tfoot元素
  5. 0~n个tbody元素(1~n个tr元素)
  6. 1~n个tr元素
  7. 可选的tfoot元素(一个table只能有一个tfoot)
属性 全局属性
border属性 - 设置边框
sortable属性 - 是否可排序

table示例

<table border="1" summary="学生信息表">
    <caption>学生信息表</caption>
    <thead>
        <tr><th>姓名</th><th>性别</th><th>年龄</th><th>班级</th></tr>
    </thead>
    <tfoot>
        <tr><td colspan="4">*描述学生信息</td></tr>
    </tfoot>
    <tbody>
        <tr><td>张三</td><td>男</td><td>20</td><td>软件251</td></tr>
        <tr><td>赵四</td><td>女</td><td>18</td><td>软件252</td></tr>
        <tr><td>王五</td><td>男</td><td>21</td><td>软件257</td></tr>
        <tr><td>田七</td><td>女</td><td>20</td><td>软件254</td></tr>
    </tbody>
</table>

table属性

属性取值及含义
border 取值为空字符串或"1", 若为"1",则为数据表格,否则为布局用表格
sortable 表格是否可排序
summary 表格摘要
cellspacing 单元格间距,单元格边框之间的距离
cellpadding 单元格填充,单元格内容与边框之间的距离
width 表格宽度
frame 表格外边框可见性,void,above,below,hsides,lhs,rhs,vsides,box,border
rules 表格内边框可见性,none,groups,rows,cols,all

官方建议使用border属性表示是否为“布局”表格

table属性实验

caption元素

表格标题元素,可以利用align属性设置位置,最好利用css设置位置。

类型取值
分类 无
元素上下文 table元素的第一个子元素
内容模型 流媒体,但是不能是th、tr、td等table的子元素标签
属性 全局属性

tr元素

代表表格的行

可以作为thead、tbody、tfoot或table的子元素

类型取值
分类 无
元素上下文 可以作为thead、tbody、tfoot和table的子元素
内容模型 0或者多个th或者td
属性 全局属性

th元素

代表表格的表头单元格,默认粗体居中显示

tr元素的子元素

类型取值
分类 无
元素上下文 tr元素的子元素
内容模型 流内容,但不能是header、footer、节内容(article、side、nav、section)、标题元素(h1~h6)
属性 全局属性
colspan属性,单元格所跨的列数
rowspan属性,单元格所跨的行数
headers属性,跟单元格相关的表头
scope属性,规定某个单元格是否是列、行、列组或行组的表头,可取row、col、rowgroup、colgroup等四个值。
abbr属性,规定单元格中内容的缩写版本
sorted属性,列的排序方向和序数

td元素

代表表格的单元格

tr元素的子元素

类型取值
分类 无
元素上下文 tr元素的子元素
内容模型 流内容
属性 全局属性
colspan属性,单元格所跨的列数
rowspan属性,单元格所跨的行数
headers属性,跟单元格相关的表头

col元素

为表格中一个或多个列定义属性值

类型取值
分类 无
元素上下文 没有span属性的colgroup
内容模型 空
属性 全局属性
span属性,该元素横跨的列数

colgroup元素

为表格中一个或多个列定义属性值

类型取值
分类 无
元素上下文 table元素的子元素,caption之后,thead\tfoot\tbody、tr之前
内容模型 col元素
属性 全局属性
span属性,该元素横跨的列数

前端开发

旨为前端开发工程师的前端开发基础课程