` 自动撑满其父 `| ` 高度的可靠方案,重点指出传统嵌套表格结构的局限性,并推荐语义更清晰、布局更可控的单层表格 + `rowspan` 替代方案。 在 HTML 布局中,嵌套表格(table-in-td)本质上不具备“等高对齐”能力。这是因为
|
的高度由其行内内容自然撑开,而内部 默认为 display: table,其高度独立计算,不会反向驱动父 | 拉伸;更关键的是,同级 |
之间不会自动对齐高度——即使一个 |
因内容多而变高,其他 |
仍保持最小内容高度,导致视觉上参差不齐。 你尝试的 table-layout: fixed 和 rowspan 无效,根本原因在于:
- table-layout: fixed 仅控制列宽计算方式,不影响行高或单元格垂直拉伸行为;
- rowspan 若未配合明确的高度约束(如父
设置 height 或 min-height),在无 CSS 高度干预时依然无法触发等高填充。✅ 真正可行的解决方案是:放弃嵌套表格,改用单层 + 合理 rowspan 结构。这不仅语义正确、兼容性好,还能天然实现“列内单元格纵向对齐”。以下是一个可直接运行的优化示例:
Equal-Height Columns via rowspan
|
Column Header |
|
T1 T1 |
test2 test2 test2 test2 |
T3 T3 |
? 关键要点说明:
|
|