Image placeholder

网页中的字母组合显示为合体字的解决方案

Image placeholder
F2EX 2017-09-18

合字、连字、连结字或合体字(英语:Ligature),在西方字体排印学中一般表示将多于一个字母的合成一个字形。如印刷品中常常将拉丁字母两个字母 fi 的 i 上一点常与 f 的一钩合并。

例如 PingFang SC 字体中的小写字母 f 和小写字母 i 组合会让两者成为合体字。其它字母与 i 组合则不会。如下图所示:

不只有 PingFang SC 字体,其他有的字体也会有合体字。许多合字都把字母 f 和其后的字符组合起来,最常用的就是 fi(或 f‌i,显示为两个独立字符)。很多字体的这两个字母并排在一起后,字母 i 上的点会抵挡到字母 f 的弧形勾,无法正确排印,所以干脆就制造一个合字铅字,把 i 的点融入 f 的勾来直接使用。其他 f 合字包括 fj、[1]f‌l(fl)、f‌f(ff)、f‌f‌i(ffi)、和f‌f‌l(ffl)。其他合字包括 fa、fe、fo、fr、fs、ft、fb、fh、fu、fy,以及 f 后加句号、逗号或连字符,还有不太常用的双写 ff 和 fft 。查看合字的完整解释

解决方案

当然并不是所有字体都会合字,如果你不希望它们自动连结,可以使用 CSS3 中的 font-variant-ligatures 属性,将它设置为 none :

font-variant-ligatures: none; /*指定所有连字和上下文形式都被禁用*/

该属性的用法和兼容性请参考这里


2017-09-21