这一小节,我们说一下HTML中的表格。比如我们常常看见的学生成绩单,比如excel一个单元格一个单元格的,这些都是表格。
表格的标签名是 table 。
目录
1 表格中的一些子标签
1.1 表头区域
1.2 表格内容区域
1.3 行和列
2 实战一小下
2.1 做个简单的成绩单
2.2 加上边框线
2.3 跨行
2.4 跨列
1 表格中的一些子标签
1.1 表头区域
比如成绩单,顶部表头总得有学号、学生姓名、科目、成绩、总成绩 这些字段,对吧。
这些字段都会放到表头里,这就需要一个 thead 的标签。
1.2 表格内容区域
那么表格内容区域呢,就需要有更详细的数据了,比如学号是001,姓名是张三,科目是数学,成绩是80,如果没有别的科目呢,总成绩就是80,如果有其他的科目呢,再累加,对吧。
这些内容都会放到表格内容区域里,这就需要一个 tbody 标签。
1.3 行和列
表格,都是一行一行的,然后再切割成一列一列的,这样切割完了就是,一块一块的,就成了单元格,一个小方格一个小方格的样子了。
而且呢,注意:是行包含着列,这个要记住。
行的标签名是 tr 。
表头的单元格标签是 th , 表格身体区域的单元格标签是 td 。
2 实战一小下
2.1 做个简单的成绩单
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>我的第一个网页</title><style type="text/css"></style></head><body><table><thead><tr><th>学号</th><th>姓名</th><th>语文成绩</th><th>数学成绩</th><th>HTML成绩</th><th>总成绩</th></tr></thead><tbody><tr><td>1</td><td>张三</td><td>80</td><td>90</td><td>96</td><td>266</td></tr><tr><td>2</td><td>李四</td><td>71</td><td>80</td><td>100</td><td>251</td></tr></tbody></table></body>
</html>
2.2 加上边框线
这样显示有点乱,加上边框线,让表格好看一些。可以加个 border="1" 的属性设置,看下面代码,然后刷新一下网页,看是不是好看多了呢。
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>我的第一个网页</title><style type="text/css"></style></head><body><table border="1"><thead><tr><th>学号</th><th>姓名</th><th>语文成绩</th><th>数学成绩</th><th>HTML成绩</th><th>总成绩</th></tr></thead><tbody><tr><td>1</td><td>张三</td><td>80</td><td>90</td><td>96</td><td>266</td></tr><tr><td>2</td><td>李四</td><td>71</td><td>80</td><td>100</td><td>251</td></tr></tbody></table></body>
</html>
2.3 跨行
当然,我们还可以搞一个跨行的展示,比如张三和李四是 1班 的,让他们放到同一个大行里,然后1班 的同学占2行。
然后再加一个 2班,班里有 王五 和 赵六,让他们也占用一个大行,这样2班,就会有2个小行。
这里需要设置的 rowspan 属性。
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>我的第一个网页</title><style type="text/css"></style></head><body><table border="1"><thead><tr><th>学号</th><th>班级</th><th>姓名</th></tr></thead><tbody><tr><td>1</td><td rowspan="2">1班</td><td>张三</td></tr><tr><td>2</td><td>李四</td></tr><tr><td>3</td><td rowspan="2">2班</td><td>王五</td></tr><tr><td>4</td><td>赵六</td></tr></tbody></table></body>
</html>
看上面的代码,我们给 td 单元格 设置了 rowspan 的属性,然后同样是 1班 的第二个单元格,就不需要添加相同的 td 代码了。
2.4 跨列
跨列呢,就是几个列,具有相同的特性,所以显示一个列信息就够了。就像刚才的跨行,目的不就是 张三 和 李四都是1班的,所以为了不冗余显示,因为他们都有相同的信息属性,都是1班,所以显示一个 1班 ,跨行一下就够了。
跨列呢,就是说好几列合并起来呗。比如我们举个例子。
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>我的第一个网页</title><style type="text/css"></style></head><body><table border="1"><thead><tr><th>学号</th><th>班级</th><th>姓名</th><th>成绩</th></tr></thead><tbody><tr><td>1</td><td rowspan="2">1班</td><td>张三</td><td>90</td></tr><tr><td>2</td><td>李四</td><td>80</td></tr><tr><td colspan="4">1班总人数:2,总成绩:170</td></tr><tr><td>3</td><td rowspan="2">2班</td><td>王五</td><td>70</td></tr><tr><td>4</td><td>赵六</td><td>100</td></tr><tr><td>4</td><td>冯七</td><td>75</td></tr><tr><td colspan="4">2班总人数:3,总成绩:245</td></tr></tbody></table></body>
</html>
哈哈,上面的代码,其实出不了这个截图的效果,如果你拿到代码,发现有问题,记得告诉我哦。