<th>: 表头单元格标签
最后更新:2026-10-13
<th>表头单元格标签
表格的表头单元格,用于标识行/列含义,默认加粗居中且带可访问性语义。
| 分类 | 表格 |
|---|---|
| 内容模型 | 流式内容 |
| 允许的父元素 | 接受流式内容的元素 |
| 闭合标签 | 需要 </th> 标签 |
| 状态 | 标准 |
📝 语法
<th scope="col">列标题</th>
⚙️ 属性
该元素支持全局属性及以下专有属性:
| 属性 | 值 | 描述 |
|---|---|---|
scope | 表头作用范围:col(列)、row(行)、colgroup、rowgroup。 | |
colspan | 横向合并的单元格数。 | |
rowspan | 纵向合并的单元格数。 | |
headers | 关联的表头单元格 id,复杂表格用。 | |
abbr | 给屏幕阅读器的缩写标题。 |
▶ 示例
编辑下方代码,在 playground 中查看实时效果:
🌐 浏览器支持
| 浏览器 | |||||
|---|---|---|---|---|---|
| <th> | ✓ v1 | ✓ v12 | ✓ v1 | ✓ v1 | ✓ v1 |
| 所有主流浏览器均支持 | |||||
提示: scope 能帮助屏幕阅读器正确朗读表格,建议始终写上。
❓ 常见问题
Qth 的 scope 属性有什么用?
A
scope='col'/row 声明表头作用于列还是行,屏幕阅读器据此把单元格读出「列头 + 行头 + 数据」的完整语境。简单表格浏览器能自动推断,但行列混合、合并单元格的复杂表格必须显式写 scope。Qth 可以用在 tbody 里吗?
A可以,行首的类别单元格(如每行第一列的「姓名」「年龄」)就应该是
<th scope='row'>——它是这一行的表头。th 不是 thead 专属,判断标准是「这是否描述了某行/列的属性」。Qth 的默认样式可以改吗?
A可以,默认的居中加粗都是浏览器样式表行为,用 CSS 完全可覆盖:
th { text-align: left; font-weight: normal; }。改样式不影响 th 的语义价值,别因为「不想要加粗」就降级用 td。🏷️ 相关标签
💡 相关案例
更多案例即将上线,敬请期待。