表格是html中经常使用到的,简单的使用可能很多人都没问题,但是更深入的了解的人恐怕不多,下面我们先来看一下如何使用。
<table>是<tr>的上层标签
<tr>必须在一个<table></table>里面,它不能单独使用,相当于<table>的属性标签.
<table>标示一个表格,<tr>标示这个表格中间的一个行
<td>标示行中的一个列,需要嵌套在<tr></tr>中间
具体格式是:(两行两列)
<table>
<tr>
<td></td>
<td></td>
</tr>
</teble>
<th>和<td>一样,也是需要嵌套在<tr>当中的,<tr>嵌套在<table>当中
<table>...</table> 用于定义一个表格开始和结束
<th>...</th> 定义表头单元格。表格中的文字将以粗体显示(<TH>与<TD>同样是标示一个储存格,唯一不同的是<TH>所标示的储存格中的文字是以粗体出现,即可以这样看:
<th>文字</th>=<td><b>文字</b></td>
),
在表格中也可以不用此标签,<th>标签必须放在<tr>标签内
<tr>...</tr> 定义一行标签,一组行标签内可以建立多组由<td>或<th>标签所定义的单元格
<td>...</td> 定义单元格标签,一组<td>标签将将建立一个单元格,<td>标签必须放在<tr>标签内
。<th>为表格标题,属性summar为摘要,<caption>标签为首部说明,<thead>标签为表格头部,<tbody>标签为表格主体内容,<tfoot>标签为表格尾部。
其中还可以使用scope 可用于取代headers属性,标记含有表头信息的单元格,其中各数值的内容如下:
row 指示当前单元格,为包含当前单元格的行提供相关的表头信息。
col 指示当前单元格,为根据当前单元格指定的列提供相应的表头信息。
rowgroup 指示当前单元格,为包含当前单元格的其余行组提供相关的表头信息。
colgroup 指示当前单元格,为根据当前单元格指定的其余列组提供相应的表头信息。
abbr 用于定义表头单元格中的缩写名,如果没有定义该属性,则将默认单元格内容为节略形式。
标准表格模型
<table>
<caption></caption>
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
</tbody>
<tfoot>
<tr>
<td></td>
</tr>
</tfoot>
</table>
相关:
<th>不光是粗体,还是居中的
<caption>也是居中的,而且如果table有border的话则caption不在border之内
TFOOT 元素内包含的有效标签有:
TD
TH
TR
任何给定的 table 对象都只能定义一个 tFoot
实际遇到的问题
1.
需要:表头固定,tbody 部份滚动 。
操作:给 tbody 设置 display: block; overflow-y: aotu; height:5rem;
问题:table 表格的格式乱了,tbody 无法和 thead 对齐。
解决:给 thead 和 tbody 下的 <tr></tr> 设置同样的样式:display: flex;
2.
行合并:colspan = 3 ,包括自己 和 后面两个 一共三个合并
列合并:rowspan = 4
<td colSpan={3} rowSpan={4}></td>