现在规则是否已经改变了?浏览器是否对其有很好的支持?
font-variant-ligatures
在CSS Fonts Level 3中定义,可提供完全控制:font-variant-ligatures: common-ligatures;
font-variant-ligatures: common-ligatures discretionary-ligatures historical-ligatures;
请查看font-variant
以启用其他排版特性,例如小型大写字母、备用字形等。
在添加font-variant-ligatures
及相关属性之前,旧的font-feature-settings
属性允许启用相同的功能。这是一个较低级别的接口,不再建议使用,除非启用没有更高级别接口的OpenType功能。
http://blog.fontdeck.com/post/15777165734/opentype-1提供了一个简单的示例:
h1 {
-webkit-font-feature-settings: "liga", "dlig";
-moz-font-feature-settings: "liga=1, dlig=1";
-ms-font-feature-settings: "liga", "dlig";
font-feature-settings: "liga", "dlig";
}
http://elliotjaystocks.com/blog/the-fine-flourish-of-the-ligature/这里有更多的讨论。
由于各种渲染问题,流行的HTML5 Boilerplate项目在两年前将其删除:
https://github.com/h5bp/html5-boilerplate/issues/78
今天早上我解决了两个 Chromium 的 bug,这些 bug 会导致 Windows XP 上的 Chrome 21 在执行字体替换时完全失败,显示缺失字符符号而不是使用来自其他字体的字符,并且文字会错误地重叠在其他元素上:
http://code.google.com/p/chromium/issues/detail?id=114719
http://code.google.com/p/chromium/issues/detail?id=149548
查看http://aestheticallyloyal.com/public/optimize-legibility/了解其他相关问题。 http://bocoup.com/weblog/text-rendering/强调了Android上的兼容性问题和一般性能问题。-o-font-feature-settings
。通过切换到Blink Opera 15,开始支持-webkit-font-feature-settings
。 - Volker E.font-variant-ligatures
。 - Chris Adamstext-rendering CSS属性向渲染引擎提供有关在呈现文本时进行优化的信息。浏览器在速度、可读性和几何精度之间进行权衡。text-rendering属性是SVG属性,在任何CSS标准中都没有定义。但是,Gecko和WebKit浏览器允许您将此属性应用于Windows、Mac OS X和Linux上的HTML和XML内容。
这告诉我们该属性在任何CSS标准中都没有定义,因此可能会导致跨浏览器问题,如浏览器兼容性表格所示。
默认情况下
浏览器在绘制文本时进行速度、可读性和几何精度方面的智能猜测。
因此,最好让浏览器处理此类细节,因为此功能尚未成为标准(但可能会有),大多数浏览器也不支持它,因此安全假设最好的选择是使用默认设置。
在我们的一个Web应用程序中使用了text-rendering: optimizeLegibility;
。它在所有浏览器中都能正确渲染,除了Windows 7上的Chrome(64)。
由于大多数最终用户都是该类别的用户,因此必须删除该属性。
使用"text-rendering: optimizelegibility"属性在安卓原生浏览器(4.2和4.3)中会导致渲染错误。如果你在加载新字体时结合使用这个属性和@font-face,那么字体将完全不显示(只有回退字体)。如果没有使用"text-rendering: optimizelegibility"和@font-face,字体将按预期加载并显示。
CSS的text-rendering属性看起来有些不稳定。与其花费时间在这个不太好的CSS属性上,也许值得尝试一下这个...
如果你可以使用Javascript,Kerning.js似乎是一个很有前途的选择,它是一个基于Javascript的字距和字距对处理工具,托管在Github上。
值得注意的是,如果你对排版非常认真,那么 Font Squirrel 提供免费使用的网络字体也是一个不错的选择。