一、表格元素汇总
表格的基本构成最少需要三个元素:<table>、<tr>、<td>,其他的一些作为可选辅助存在
元素名称
说明
table
表示表格
thead
表示标题行
tbody
表示表格主体
tfoot
表示表脚
tr
表示一行单元格
th
表示标题行单元格
td
表示单元格
col
表示一列
colgroup
表示一组咧
caption
表示表格标题
二、构建表格解析
1、<table><tr><td>构建基础表格
1
2
3
4
5
6
7
8
9
10
11
12
<code><</code><code>table</code> <code>border</code><code>=</code><code>"1"</code><code>></code>
<code> </code><code><</code><code>tr</code><code>></code>
<code> </code><code><</code><code>td</code><code>>张三</</code><code>td</code><code>></code>
<code> </code><code><</code><code>td</code><code>>男</</code><code>td</code><code>></code>
<code> </code><code><</code><code>td</code><code>>未婚</</code><code>td</code><code>></code>
<code> </code><code></</code><code>tr</code><code>></code>
<code> </code><code><</code><code>tr</code><code>></code>
<code> </code><code><</code><code>td</code><code>>李四</</code><code>td</code><code>></code>
<code> </code><code><</code><code>td</code><code>>女</</code><code>td</code><code>></code>
<code> </code><code><</code><code>td</code><code>>已婚</</code><code>td</code><code>></code>
<code></</code><code>table</code><code>></code>
解释:<table>元素表示一个表格的声明,<tr>元素表示表格的一行,<td>元素表示一个单元格。默认情况下表格是没有边框的,所以,在<table>元素增加一个border属性,设置为1即可显示边框。
2、<th>为表格添加标题单元格
13
14
15
16
17
<code><</code><code>table</code> <code>border</code><code>=</code><code>"1"</code> <code>style</code><code>=</code><code>"width: 300px"</code><code>></code>
<code> </code><code><</code><code>th</code><code>>姓名</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>性别</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>婚姻</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>张三</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>男</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>未婚</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>李四</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>女</</code><code>th</code><code>></code>
<code> </code><code><</code><code>th</code><code>>已婚</</code><code>th</code><code>></code>
解释:<th>元素主要是添加标题行的单元格。实际作用就是将内部文字居中且加密。这里使用了一个通用属性style,主要用于CSS样式设置,以后会涉及到。<th><td>均属于单元格,包含了两个合并属性:colspan(左右合并),rowspan(上下合并)等。
例如:
18
19
20
<code> </code><code><</code><code>td</code> <code>colspan</code><code>=</code><code>"3"</code><code>>共计有两人</</code><code>td</code><code>></code>
<a href="https://s5.51cto.com/wyfs02/M01/8D/93/wKioL1iiq37wSbSGAAA_lBEIS0M331.png" target="_blank"></a>
<code><</code><code>tr</code><code>></code>
<code><</code><code>th</code> <code>rowspan</code><code>=</code><code>"4"</code><code>>基本情况</</code><code>th</code><code>></code>
<code><</code><code>th</code><code>>姓名</</code><code>th</code><code>></code>
<code><</code><code>th</code><code>>性别</</code><code>th</code><code>></code>
<code><</code><code>th</code><code>>婚姻</</code><code>th</code><code>></code>
<code></</code><code>tr</code><code>></code>
<code><</code><code>td</code><code>>张三</</code><code>td</code><code>></code>
<code><</code><code>td</code><code>>男</</code><code>td</code><code>></code>
<code><</code><code>td</code><code>>未婚</</code><code>td</code><code>></code>
<code><</code><code>td</code><code>>李四</</code><code>td</code><code>></code>
<code><</code><code>td</code><code>>女</</code><code>td</code><code>></code>
<code><</code><code>td</code><code>>已婚</</code><code>td</code><code>></code>
3、<thead>添加表头
<code><</code><code>thead</code><code>></code>
<code> </code><code><</code><code>td</code><code>>###</</code><code>td</code><code>></code>
<code></</code><code>thead</code><code>></code>
解释:<thead>元素就是限制和规范了表格的表头部分。尤其是以后动态生成表头,它的位置是不固定的,使用此元素可以限定在开头的位置
<code> </code><code><</code><code>thead</code><code>></code>
<code> </code><code></</code><code>thead</code><code>></code>
<a href="https://s4.51cto.com/wyfs02/M01/8D/94/wKioL1iitruzGTZrAAAt0F8ST4A624.png" target="_blank"></a>
4、<tfood>添加表脚
<code><</code><code>tfoot</code><code>></code>
<code> </code><code><</code><code>td</code> <code>colspan</code><code>=</code><code>"3"</code><code>>合计</</code><code>td</code><code>></code>
<code></</code><code>tfoot</code><code>></code>
解释:<tfood>元素为表格生成表脚,限制在表格的底部
5、<tbody>添加表主体
<code><</code><code>tbody</code><code>> </code>
<code></</code><code>tbody</code><code>></code>
解释:<tbody>元素主要是包含住非表头表脚的主体部分,有助于表格格式的清晰,更加有助于后续的CSS和JavaScript的控制
6、<caption>添加表格标题
<code><</code><code>caption</code><code>>这是一个人物表</</code><code>caption</code><code>></code>
解释:<caption>元素给表格添加一个标题
示例:
21
22
23
<code> </code><code><</code><code>caption</code><code>>这是一个标题</</code><code>caption</code><code>></code>
<code> </code><code><</code><code>tfoot</code><code>></code>
<code> </code><code><</code><code>tr</code><code>></code>
<code> </code><code><</code><code>td</code> <code>colspan</code><code>=</code><code>"3"</code><code>>合计</</code><code>td</code><code>></code>
<code> </code><code></</code><code>tr</code><code>></code>
<code> </code><code></</code><code>tfoot</code><code>></code>
<a href="https://s1.51cto.com/wyfs02/M02/8D/95/wKioL1iivRGRHz2FAAA_es2c8eE858.png" target="_blank"></a>
7、<colgroup>设置列
<code><</code><code>colgroup</code> <code>span</code><code>=</code><code>"2"</code> <code>style</code><code>=</code><code>"background:red;"</code><code>></code>
解释:该标签是为了处理某个列,span属性定义处理哪些列。1表示第一列,2表示前两列。如果要单独设置第二列,那么需要声明两个,先处理第一个,将列点移入第二位,在处理第二个即可。
<code> </code><code><</code><code>colgroup</code> <code>style</code><code>=</code><code>"background: white;"</code> <code>span</code><code>=</code><code>"1"</code><code>></</code><code>colgroup</code><code>></code>
<code> </code><code><</code><code>colgroup</code> <code>style</code><code>=</code><code>"background: red;"</code> <code>span</code><code>=</code><code>"1"</code><code>></</code><code>colgroup</code><code>></code>
<code> </code><code><</code><code>td</code> <code>colspan</code><code>=</code><code>"3"</code><code>>共计有两人</</code><code>td</code><code>></code>
<a href="https://s5.51cto.com/wyfs02/M02/8D/95/wKioL1iivoGwUwi0AAA7d0_lpLw098.png" target="_blank"></a>
8、<col>更灵活设置列
<code><</code><code>colgroup</code><code>></code>
<code> </code><code><</code><code>col</code><code>></code>
<code> </code><code><</code><code>col</code> <code>style</code><code>=</code><code>"bakgroup:red;span="</code><code>"1"></code>
<code></</code><code>colgroup</code><code>></code>
解释:<col>元素表示单独一列,一个表示一列,控制更加灵活,如果设置了span规则,控制多列
上面的例子可以这样设置
24
<code>table border="1" style="width: 300px"></code>
<code> </code><code><</code><code>colgroup</code><code>></code>
<code> </code><code><</code><code>col</code><code>></code>
<code> </code><code><</code><code>col</code> <code>style</code><code>=</code><code>"background: red;"</code><code>></code>
<code> </code><code></</code><code>colgroup</code><code>></code>
<code></code>
本文转自 曾哥最爱 51CTO博客,原文链接:http://blog.51cto.com/zengestudy/1897713,如需转载请自行联系原作者