目标是从文本中删除fl和fi中的粗体字母
我能够在此codepen中重现该问题:
https://codepen.io/jossnaz/pen/vWgEGB
基本上fira没有将任何letter-spacing
应用于字符,而且它们的字符是粗体。不知道为什么。
答案 0 :(得分:4)
有一个CSS属性,用于控制浏览器自动生成连字的方式。
尝试添加:
font-variant-ligatures: none;
到你的段落元素。
请参阅此代码:https://codepen.io/jossnaz/pen/vWgEGB
对于你想要控制字符间距的问题,你的源文本就像" truffle shuffle"使用单独的F和L字符,这将阻止浏览器生成连字并按照您的预期应用间距。
但是,这不是您在网站上遇到的唯一问题!
在您的页面中,文本实际上使用Unicode fi 和 fl 连字符(U + FB01和U + FB02)。浏览器不会将这些字符分成单独的字符,而且它们不包含在Google字体API中。这可能是您的CMS中的一些插件自动转换连字,或者可能是从编辑器复制和粘贴的结果。
有关此示例,请参阅:https://codepen.io/anon/pen/mqmLLZ。
这些连字符不包含在webfont中 - 拉丁语连字符位于U + FB00-FB06,字体或Google的Font API都不包含它们。
因此,他们正在切换到后备字体,在这种情况下,它被指定为通用sans-serif
- 可能是Arial或Helvetica。
它们本身并不是粗体,但它们比Fira Sans重。