后备字体为什么禁用opentype功能?

时间:2019-04-16 13:39:59

标签: css opentype

当我在我的CSS代码中添加后备字体时,我的网站不再显示我已激活的opentype功能。为什么是这样?

Opentype功能可用于:font-family:“ Ogg-Roman”;

Opentype功能不起作用:字体系列:“ Ogg-Roman”,佐治亚州,衬线;

这是我的网站:https://cpdesignery.com/

    @font-face {
font-family: "Ogg-Roman", Georgia, serif;
src: url('https://cpdesignery.com/wp-content/uploads/2019/01/Ogg-Roman.eot');
src: url('https://cpdesignery.com/wp-content/uploads/2019/01/Ogg-Roman.eot?#iefix') format('embedded-opentype'), 
url('https://cpdesignery.com/wp-content/uploads/2019/01/Ogg-Roman.woff2') format('woff2'), 
url('https://cpdesignery.com/wp-content/uploads/2019/01/Ogg-Roman.woff') format('woff');
}

h1, h2, h3, h4 {
    -webkit-font-feature-settings: "ss01" on, "ss03" on;
    -moz-font-feature-settings: "ss01" on, "ss03" on;
    -ms-font-feature-settings: "ss01" on, "ss03" on;
    font-feature-settings: "ss01" on, "ss03" on;
}

1 个答案:

答案 0 :(得分:0)

样式集功能的行为是特定于字体的:字体设计者可以自由使用它们,无论他们选择哪种样式-即他们想要提供的任何样式差异。因此,如果您继续应用“ ss01”功能但更改了底层字体,则最终可能会获得截然不同的样式效果。

section 6.9 of CSS Fonts Module Level 4中描述了一般性问题(不仅适用于样式集功能)。

假定后备字体甚至支持给定的OpenType功能。可能不会。在这种情况下,来自CSS4 Fonts, 6.12的内容是相关的:

字体中不存在的功能标签将被忽略;用户代理不得尝试基于这些功能标签合成后备行为。一个例外是,用户代理可能会通过包含字距表形式的字距调整数据的字体综合支持字距功能,而GPOS表中却缺少字距功能的支持。

类似,来自第7.2节:

当字体不支持给定的基础字体功能时,将简单地呈现文本,就像未启用该字体功能一样;字体回退不会发生,除非明确为特定属性定义,否则不会尝试合成功能。