上一节介绍了表格的“基本结构”,但是一个表格的“完整结构”不仅仅只有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加入边框是想让大家更清楚地看到一个表格结构。