最先搜索到的资料是 [中文文案排版指北]( https://github.com/sparanoid/chinese-copywriting-guidelines),推崇的原则是使用空格。

后面我发现 W3C 有个 [中文排版需求]( https://www.w3.org/International/clreq/) 的草案。草案中 [3.2.2 横排的中、西文混排配置]( https://www.w3.org/International/clreq/#mixed_text_composition_in_horizontal_writing_mode) 也提出可使用西文词间空格。但是,草案全文并没有遵循这个原则。

其实,这个早在 2015 年就有过激烈的讨论:[文本中多处中西混排没有依照 3.2.2 ,3.2.4 留出空白。 · Issue #14 · w3c/clreq (github.com)]( https://github.com/w3c/clreq/issues/14)。

其实,也如大家所说的一样“将中西文间距视作「样式」而非「内容」”,另外,在语义上是否需要空格也有激烈的讨论。

在 IE 上是有 [text-autospace]( https://www.php.cn/manual/view/14573.html) 这个 CSS 样式来控制的。现在在 W3C 的草案 [CSS Text Module Level 4]( https://www.w3.org/TR/css-text-4/#text-autospace-property) 也加入了这个样式。

结论,W3C 是不使用空格来分隔中英文混排的(在中文语境下),并把这个问题交给未来解决(也就是上文说的 CSS )。

另外,在其他地方,比如,操作系统的默认文件(参考 Windows 快捷方式)命名,Microsoft 是使用的空格分隔中英文,但是国内的软件基无使用空格分隔的,例如:`卸载英文名的软件`。

对于强迫症患者可能就会有选择困难症了,文件名使用空格分隔,而文中内容不使用空格分隔?其实纠结的根本原因就是现有的很多(笔记)软件不支持(比如:Obsidian ),如果现有的软件支持文件列表的文件名和内容有对应的样式支持(有这样的 Markdown 笔记软件吗?),那就不会有人添加空格了。我建议统一,如果使用了空格分隔,那就都使用;如果没有使用,那就都不使用。

PS:我还特意翻看了下国家公文排版(文件和网页),基本上都不使用空格风格(可参考)。

那么,以后那些使用 Markdown 生成的 Web 方案会加入 `text-autospace` 样式吗?如果加入了,那么是否要处理使用空格分隔的问题?毕竟,现在很多人都是使用空格来分隔的。
举报· 85 次点击
登录 注册 站外分享
6 条回复  
XueXianqi 小成 2024-9-4 09:18:21
您是否在寻找 “盘古之白”
efcndi 初学 2024-9-3 21:08:23
难以忍受人为地在文字之间插入不应该存在的元素。null 就是 null ,0 就是 0 ,不应该混淆。
sphendae 小成 2024-9-3 18:07:52
@coolair 系统自带和部分第三方会显示间隙
wushan 小成 2024-9-3 12:49:19
手动加空格很多年,但自从五年前 iOS 和 macOS 自动为中、西文间加上 1/8 em 的间隙后就不加了。而且半角空格很多时候看起来过宽,这个 1/8 em 比一个半角空格看起来舒服多了。这也是我目前还在使用苹果生态的原因之一,希望安卓和 Windows 能够跟进。
radishzz 小成 2024-9-3 12:31:43
平面设计路过,在排版中中文、英文、数字之间都需要加空格,但在网络中很少有人能做到,除非输入法自带这个功能
yin1999 小成 2024-9-3 10:57:05
说个我们在 MDN 遇到的问题:,在 markdown 文档中,中英文混排如果不加空格,很容易碰到工具(我们用的是 remark-gfm )无法正确渲染样式的问题。如:

```
已废弃的**`unescape()`**
```

会被渲染成:

```
已废弃的**<code>unescape()</code>**
```

所以在上面的样式能够被正确渲染之前,我会站“中英文混排加空格”。
返回顶部