结论:行高必须靠td或th的css控制,tr的height属性基本不可靠;列宽优先用width设置在td/th上,或用col标签统一约束。因为浏览器对tr的height支持极不一致,chrome忽略、firefox部分生效,而td受box-sizing、padding、line-height及内容影响,需组合height+line-height+padding+box-sizing:border-box才能锁死单行高度;列宽若仅设td易被最大值覆盖,col配合table-layout:fixed才真正可控。

直接说结论:行高必须靠 td 或 th 的 CSS 控制,tr 的 height 属性基本不可靠;列宽优先用 width 设置在 td/th 上,或用 col 标签统一约束,别依赖 table 的 width 算术分配。
为什么 tr 设 height 没反应?
浏览器对 tr 元素的 height 支持极不一致——Chrome 会忽略,Firefox 可能部分生效,Safari 表现更 unpredictable。真正起作用的是单元格自身的盒模型行为。
-
td默认box-sizing: content-box,加上默认padding和line-height,会让实际高度远超你写的height - 文字换行、图片、内联元素都会撑开
td,此时仅设height会被内容顶破 - 如果真要锁死单行高度,得组合写:
height: 40px; line-height: 40px; padding: 0; box-sizing: border-box;
td 设 height 还是 line-height?
看场景选:
如果你了解HTML,CSS和JavaScript,您已经拥有所需的工具开发Android应用程序。本动手本书展示了如何使用这些开源web标准设计和建造,可适应任何Android设备的应用程序 - 无需使用Java。您将学习如何创建一个在您选择的平台的Android友好的网络应用程序,然后转换与自由PhoneGap框架到一个原生的Android应用程序。了解为什么设备无关的移动应用是未来的潮流,并开始构建应用程序,提供更
- 纯文本单行 → 用
line-height最稳,它直接控制行距,视觉高度可预测(比如line-height: 32px) - 需要精确像素控制 + 垂直居中 → 必须配
height+line-height(值相等)+vertical-align: middle - 多行文本或含图片 →
height无效,改用max-height+overflow: hidden或display: -webkit-box截断 - 后台数据列表这类固定结构表格,推荐统一 class:
.data-row td { height: 48px; line-height: 48px; padding: 0; }
列宽怎么设才不“跳”?
列宽容易错在以为设了 td 就生效——其实一列所有 td 的 width 会取最大值作为该列基准,不是每个单元格独立生效。
- 想强制某列宽度,用
<col>标签最干净:<col style="width: 120px"> <col style="width: auto"> - 避免在
table上写width="100%"后又给td写固定像素,这容易触发浏览器重算冲突 - 响应式场景下,
min-width比width更安全,防止小屏下内容被压缩变形 - 如果用了
table-layout: fixed,必须给第一行th或td显式设宽,否则列宽由内容决定,失去控制力
Excel 导出 HTML 表格后行高列宽错乱?
Excel 自带导出的 HTML 通常混用过时属性(如 height、width 在 tr/td 上),且内联样式嵌套深、!important 泛滥。
- 第一步:删掉所有
height和width的 HTML 属性,只留语义结构 - 第二步:用外部 CSS 重写,重点重置
td, th { margin: 0; padding: 8px; } - 第三步:加
table { table-layout: fixed; width: 100%; }配合col控制列,避免内容撑开破坏布局 - 特别注意:Excel 常导出
style="mso-ignore: padding;"这类私有属性,必须手动清理
最常被忽略的一点:表格高度最终是内容、CSS 盒模型、字体渲染三者共同决定的。哪怕写了 height: 36px,只要字体实际行高 > 36px(比如用了大字号或特殊字体),就一定会撑开。调试时先关掉所有 padding 和 border,再逐个加回,才能准确定位谁在“偷偷加高”。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










