font-language-override CSS property controls the use of language-specific glyphs in a typeface.
/* Keyword value */ font-language-override: normal; /* <string> values */ font-language-override: "ENG"; /* Use English glyphs */ font-language-override: "TRK"; /* Use Turkish glyphs */ /* Global values */ font-language-override: inherit; font-language-override: initial; font-language-override: revert; font-language-override: revert-layer; font-language-override: unset;
By default, HTML's
lang attribute tells browsers to display glyphs designed specifically for that language. For example, a lot of fonts have a special character for the digraph
fi that merge the dot on the "i" with the "f." However, if the language is set to Turkish the typeface will likely know not to use the merged glyph; Turkish has two versions of the "i," one with a dot (
i) and one without (
ı), and using the ligature would incorrectly transform a dotted "i" into a dotless "i."
font-language-override property lets you override the typeface behavior for a specific language. This is useful, for example, when the typeface you're using lacks proper support for the language. For instance, if a typeface doesn't have proper rules for the Azeri language, you can force the font to use Turkish glyphs, which follow similar rules.