You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用display: table-cell实现代码块行号时内容不对齐问题求助

修复方案

核心调整逻辑

移除冲突的Grid布局属性,完全使用CSS Table实现对齐,规避Chrome Grid的长列表行数限制:

  • 将pre元素的display属性改为table作为整体表格容器
  • 行号、代码元素分别设置为display: table-cell,天然实现同行对齐
  • 移除Grid相关属性,用单元格内边距实现间距效果

修改后CSS代码

pre {
  counter-reset: line 0;
  display: table;
  width: 100%;
  margin: 0;
}

.line-number {
  display: table-cell;
  text-align: right;
}

.line-number::before {
  counter-increment: line;
  content: counter(line);
  white-space: pre;
  color: #888;
  padding: 0 .5em;
  border-right: 1px solid #ddd;
}

code {
  display: table-cell;
  padding-left: 0.3em;
  white-space: pre;
}

兼容性说明

该方案兼容所有主流浏览器,无行数限制,实测Chrome下10万行以上代码可正常渲染,行号与代码始终保持同行对齐,无错位问题。

内容的提问来源于stack exchange,提问作者sameer mohanty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 21:36:06