给 table 写了 text-align:left 或者 margin:0,表格仍然居中或者偏右,是布局调试里的常见场景。多数情况下表格本身没有问题,真正影响位置的是父级容器。

按顺序排查
第一处:父元素是否写了 text-align:center。table 虽然默认是块级,但部分浏览器会把表格当作可居中的对象处理,父级居中声明会连带影响表格。把父容器的 text-align 改为 left,问题通常立刻消失。
第二处:table 自身是否被加了 margin:0 auto。这套写法是水平居中的标准手段,一旦从公共样式里继承下来,表格就会稳稳居中。检查浏览器开发者工具里 table 节点的计算样式,确认 margin 来源。
第三处:是否套了 div 并给 div 设置了固定宽度加自动外边距。这种情况下表格其实靠左了,只是整个容器居中,视觉上像是表格居中。
第四处:CSS 框架的默认样式。Bootstrap 等框架会给 table 挂一套预置规则,直接覆盖即可。
验证方法
在开发者工具中选中 table,逐层向上查看每个祖先节点的 text-align 与 margin,定位到第一个引入居中效果的节点,改动那一处,而不是给表格堆更多声明。
