[css-fonts] font-language-override property and descriptor

It has just come to my attention that font-language-override, which was 
invented at the same time as font-feature-settings to provide detailed 
low-level control of OpenType layout features, is only specified as a 
property[1] in CSS Fonts.

In contrast, font-feature-settings exists as both a property[2] and a 
@font-face descriptor[3], with the descriptor providing initial settings 
for a given font, potentially overridden by the font-feature-settings 
property if present in a specific element's style.

When we defined font-language-override, to allow authors to control 
exactly which "language system" behavior a font should apply (which can 
not always be inferred appropriately from the content language), I think 
it was always the intention/expectation that this property would closely 
parallel font-feature-settings. If a font can be defined in a @font-face 
rule as using a particular set of features, it should equally be 
possible to define it as applying a particular language system. The 
omission of font-language-override as a @font-face descriptor was, I 
think, an oversight rather than a deliberate exclusion.

Firefox has supported font-language-override alongside 
font-feature-settings as both property and descriptor ever since the 
initial introduction of OpenType feature controls in CSS.

So I think we should add the font-language-override descriptor to CSS 
Fonts, by adding it to ยง4.7 "Font features: the font-variant and 
font-feature-settings descriptors". Its behavior is directly parallel to 
font-variant and font-feature-settings, so it simply needs to be added 
as a third descriptor to the text describing these.

JK


[1] https://drafts.csswg.org/css-fonts-3/#font-language-override-prop
[2] https://drafts.csswg.org/css-fonts-3/#font-feature-settings-prop
[3] https://drafts.csswg.org/css-fonts-3/#font-rend-desc

Received on Friday, 3 February 2017 18:54:01 UTC