制表符到底多宽:tab-size
论坛与文档里常有人贴一大段用 Tab 缩进的代码,浏览器渲染后缩进宽得出奇——因为 <pre> 里一个制表符默认占 8 个空格宽(沿袭早期终端的传统)。tab-size 一行即可调整:设为 2 或
4,缩进立刻规整。拖动下面的滑块,在真正用制表符缩进的代码上实时观察宽度变化。
1 · 三个要点
| 点 | 说明 |
|---|---|
| 默认值 | tab-size: 8——沿袭传统,往往偏宽 |
| 取值 | 整数 = 多少个空格宽;也可给长度,如 tab-size: 2ch |
| 前提 | 只对制表符生效,且需 white-space 为 pre / pre-wrap 等保留 tab 的值;normal 会把 tab 折叠成普通空格,属性就「失效」了 |
历史上 -moz-tab-size 是早期前缀,如今主流浏览器都支持无前缀的 tab-size,带上前缀可兼容旧版 Firefox。
为什么用它:贴代码、展示带缩进的纯文本、ASCII 表格对齐,都靠 tab 对齐。把 tab-size 调到和你代码风格一致(2 / 4),既保留了 tab 字符本身,又让渲染宽度恰到好处——比把 tab 全部替换成空格更为便捷。
2 · 相关链接
- tab-size · MDN——developer.mozilla.org。制表符 U+0009 的渲染宽度(整数 = 空格数,或长度值);需
white-space保留 tab 才生效。 - CSS Text Module Level 4——drafts.csswg.org · CSSWG。
tab-size(§Tab Character Size)与text-autospace的规范出处。