上一节介绍了表格的“基本结构”,但是一个表格的“完整结构”不仅仅只有table、tr、td,还包括caption、th等。

一、表格标题:caption

在HTML中,表格一般都会有一个标题,我们可以使用caption标签来实现。

语法:

<table> <caption>表格标题</caption> <tr> <td>单元格1</td> <td>单元格2</td> </tr> <tr> <td>单元格3</td> <td>单元格4</td> </tr> </table>

说明:

一个表格只能有一个标题,也就是只能有一个caption标签。在默认情况下,标题都是位于整个表格内的第一行。

举例:

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>表格标题</title> <!--这里使用CSS为表格加上边框--> <style type="text/css"> table,tr,td{border:1px solid silver;} </style> </head> <body> <table> <caption>考试成绩表</caption> <tr> <td>小明</td> <td>80</td> <td>80</td> <td>80</td> </tr> <tr> <td>小红</td> <td>90</td> <td>90</td> <td>90</td> </tr> <tr> <td>小杰</td> <td>100</td> <td>100</td> <td>100</td> </tr> </table> </body> </html>

浏览器预览效果如下图所示。

分析:

默认情况下,表格是没有边框的。在这个例子中,我们使用CSS加入边框是想让大家更清楚地看到一个表格结构。

二、表头单元格:th

在HTML中,单元格其实有两种:表头单元格,使用th标签;表行单元格,使用td标签。

th,指的是table header cell(表头单元格)。td,指的是table data cell(表行单元格)。

语法:

<table> <caption>表格标题</caption> <tr> <th>表头单元格1</th> <th>表头单元格2</th> </tr> <tr> <td>表行单元格1</td> <td>表行单元格2</td> </tr> <tr> <td>表行单元格3</td> <td>表行单元格4</td> </tr> </table>

说明:

th和td在本质上都是单元格,但是并不代表两者可以互换,两者具有以下两种区别。

    当然,对于表头单元格,我们可能会使用td来代替th,但是不建议这样做。因为在“5.5 HTML语义化”这一节我们已经明确说过了:学习HTML的目的就是,在需要的地方用到正确的标签(也就是语义化)。

    举例:

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>表头单元格</title> <!--这里使用CSS为表格加上边框--> <style type="text/css"> table,tr,td,th{border:1px solid silver;} </style> </head> <body> <table> <caption>考试成绩表</caption> <tr> <th>姓名</th> <th>语文</th> <th>英语</th> <th>数学</th> </tr> <tr> <td>小明</td> <td>80</td> <td>80</td> <td>80</td> </tr> <tr> <td>小红</td> <td>90</td> <td>90</td> <td>90</td> </tr> <tr> <td>小杰</td> <td>100</td> <td>100</td> <td>100</td> </tr> </table> </body> </html>

    浏览器预览效果如下图所示。

    分析:

    默认情况下,表格是没有边框的。在这个例子中,我们使用CSS加入边框是想让大家更清楚地看到一个表格结构。