理解 <td> 标签在 HTML 表格中的核心作用
掌握 <td> 与 <th> 的区别及使用场景
熟练使用 colspan 和 rowspan 实现单元格合并
学会通过 CSS 对 <td> 进行样式优化(内边距、背景色、边框等)
遵循现代 Web 开发的最佳实践,避免使用已废弃的 HTML 属性
<td> 标签<td> 是 Table Data Cell(表格数据单元格) 的缩写,用于在 HTML 表格中存放实际内容,如文本、数字、图片、链接等。
<table>
<tr>
<td>数据 1</td>
<td>数据 2</td>
</tr>
</table>每个
<td>必须嵌套在<tr>(表格行)内部,而<tr>又必须位于<table>中。
文本为普通字体(非加粗)
内容左对齐
无默认边框或背景(需手动添加)
<td> vs <th>原则:只有真正作为“标题”的单元格才用
<th>,其余一律用<td>。
所有全局属性(如
data-*、title)和事件属性(如onclick)也受支持。
请勿使用
以下属性在 HTML5 中已被移除,应完全由 CSS 替代:
已过时
<td align="center" bgcolor="#ffebcc" width="100">旧式代码</td>CSS 控制
<style>
.summary-cell {
text-align: center;
background-color: #ffebcc;
width: 100px;
padding: 6px;
}
</style>
<td class="summary-cell">现代写法</td>rowspan垂直合并单元格
<table border="1">
<tr>
<th>商品</th>
<th>详情</th>
</tr>
<tr>
<td rowspan="2">笔记本电脑</td>
<td>品牌:星辰科技</td>
</tr>
<tr>
<td>价格:¥5999</td>
</tr>
</table>“笔记本电脑” 单元格跨越两行,清晰地将两条相关信息归为一类。
<head>
<style>
table {
border-collapse: collapse;
width: 100%;
}
td {
border: 1px solid #ccc;
padding: 10px;
text-align: left;
}
/* 斑马纹:提升可读性 */
tr:nth-child(even) td {
background-color: #f8f9fa;
}
/* 高亮特定列 */
td:nth-child(2) {
font-weight: bold;
color: #2c6fbb;
}
</style>
</head>
<body>
<table>
<tr><td>张伟</td><td>32</td></tr>
<tr><td>李婷</td><td>28</td></tr>
</table>
</body>始终添加内边距(padding)
避免文字紧贴边框,提升可读性:
td { padding: 8px 12px; }使用边框分隔数据
尤其在多行多列表格中,边框能显著提升清晰度:
table, td { border: 1px solid #ddd; }避免内联样式,优先使用 class
便于维护和复用样式。
合理使用 colspan / rowspan
仅在逻辑上需要“合并”时使用,避免过度复杂化表格结构。
不要用表格做页面布局<td> 仅用于展示表格型数据,布局应使用 Flexbox 或 Grid。
如果一个 <td> 同时设置了 colspan="2" 和 rowspan="2",它会覆盖多少个原始单元格?
如何通过 CSS 让某一列的所有 <td> 单元格右对齐(例如金额列)?
在动态生成表格时(如从 API 获取数据),如何安全地将用户输入插入 <td> 中以防止 XSS 攻击?