@@ -1847,8 +1847,10 @@ <h3 id=font-prop><span class=secno>3.7 </span>Shorthand font property: the
18471847 stylesheet. Values for the < a href ="#propdef-font-variant "
18481848 title ="font-variant!!property "> ‘< code
18491849 class =property > font-variant</ code > ’</ a > property may also be included
1850- but only those supported in CSS 2.1, none of the font-variant values added
1851- in this specification can be used in the < span class =property > ‘< a
1850+ but only those supported in CSS 2.1, none of the < a
1851+ href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
1852+ class =property > font-variant</ code > ’</ a > values added in this
1853+ specification can be used in the < span class =property > ‘< a
18521854 href ="#propdef-font "> < code class =property > font</ code > </ a > ’</ span >
18531855 shorthand:
18541856
@@ -3420,24 +3422,25 @@ <h2 id=font-rend-props><span class=secno>6 </span>Font Feature Properties</h2>
34203422 provide glyphs for a wide range of ligatures, contextual and stylistic
34213423 alternates, tabular and old-style figures, small capitals, automatic
34223424 fractions, swashes, and alternates specific to a given language. To allow
3423- authors control over these font capabilities, the font-variant property
3424- has been expanded for CSS3, it now functions as a shorthand for a set of
3425- properties that provide control over stylistic font features.
3425+ authors control over these font capabilities, the ‘< code
3426+ class =property > font-variant</ code > ’ property has been expanded for CSS3.
3427+ It now functions as a shorthand for a set of properties that provide
3428+ control over stylistic font features.
34263429
34273430 < h3 id =glyph-selection-positioning > < span class =secno > 6.1 </ span > Glyph
34283431 selection and positioning</ h3 >
34293432
34303433 < p > Simple fonts used for displaying Latin text use a very basic processing
3431- model, fonts contain a < a href ="#character-map "> < em > character map</ em > </ a >
3432- which maps a given character to a glyph for that character. Glyphs for
3433- subsequent characters are simply placed next in line along a run of text.
3434- Font formats such as OpenType and AAT (Apple Advanced Typography) use a
3435- richer processing model, the glyph for a given character can be chosen and
3436- positioned not just based on a single character, but also based on
3437- surrounding characters along with the language, script, and features
3438- enabled for the text. Font features may be required for specific scripts,
3439- or recommended as enabled by default or they may be stylistic features
3440- meant to be used under author control.
3434+ model. Fonts contain a < a href ="#character-map "> < em > character map</ em > </ a >
3435+ which maps each character to a glyph for that character. Glyphs for
3436+ subsequent characters are simply placed one after the other along a run of
3437+ text. Modern font formats such as OpenType and AAT (Apple Advanced
3438+ Typography) use a richer processing model. The glyph for a given character
3439+ can be chosen and positioned not just based on the codepoint of the
3440+ character itself, but also on adjacent characters as well as the language,
3441+ script, and features enabled for the text. Font features may be required
3442+ for specific scripts, or recommended as enabled by default or they might
3443+ be stylistic features meant to be used under author control.
34413444
34423445 < p > For a good visual overview of these features, see the < a
34433446 href ="#OPENTYPE-FONT-GUIDE "
@@ -3446,40 +3449,43 @@ <h3 id=glyph-selection-positioning><span class=secno>6.1 </span>Glyph
34463449 href ="#WINDOWS-GLYPH-PROC "
34473450 rel =biblioentry > [WINDOWS-GLYPH-PROC]<!--{{WINDOWS-GLYPH-PROC}}--> </ a > .
34483451
3449- < p > Stylistic font features can be classified into two broad categories,
3452+ < p > Stylistic font features can be classified into two broad categories:
34503453 ones that affect the harmonization of glyph shapes with the surrounding
3451- context, such as kerning and ligature features, and those such as the
3454+ context, such as kerning and ligature features, and ones such as the
34523455 small-caps, subscript/superscript and alternate features that affect shape
34533456 selection.
34543457
3455- < p > The subproperties of font-variant listed below are used to control these
3456- stylistic font features; they do not control features that are required
3457- for displaying certain scripts, such as the OpenType features used when
3458- displaying Arabic or Indic language text. They affect glyph selection and
3459- positioning, they do not affect font selection as described in the font
3460- matching section (except in cases required for compatibility with CSS
3461- 2.1).
3458+ < p > The subproperties of < a href ="#propdef-font-variant "
3459+ title ="font-variant!!property "> ‘< code
3460+ class =property > font-variant</ code > ’</ a > listed below are used to control
3461+ these stylistic font features. They do not control features that are
3462+ required for displaying certain scripts, such as the OpenType features
3463+ used when displaying Arabic or Indic language text. They affect glyph
3464+ selection and positioning, but do not affect font selection as described
3465+ in the font matching section (except in cases required for compatibility
3466+ with CSS 2.1).
34623467
34633468 < p > To assure consistent behavior across user agents, the equivalent
3464- OpenType property settings are listed for individual properties and must
3465- be considered normative. When using other font formats these should be
3466- used as a guideline to map CSS font feature property values to specific
3467- font features.
3469+ OpenType property settings are listed for individual properties and are
3470+ normative. When using other font formats these should be used as a
3471+ guideline to map CSS font feature property values to specific font
3472+ features.
34683473
34693474 < h3 id =language-specific-support > < span class =secno > 6.2
34703475 </ span > Language-specific display</ h3 >
34713476
34723477 < p > OpenType also supports language-specific glyph selection and
34733478 positioning, so that text can be displayed correctly in cases where the
3474- language dictates a specific display behavior. Languages often share a
3475- common script but the shape of certain letters may vary across those
3476- languages, such as the variations in certain Cyrillic letters used in
3477- Russian and Bulgarian text. In Latin text, it's common to render "fi" with
3478- an explicit fi-ligature that lacks a dot on the "i". However, in languages
3479- such as Turkish which uses both a dotted-i and a dotless-i, it's important
3480- to not use this ligature or use a specialized version that contains a dot
3481- over the "i". The example below shows language-specific variations based
3482- on stylistic traditions found in Spanish, Italian and French orthography:
3479+ language dictates a specific display behavior. Many languages share a
3480+ common script, but the shape of certain letters can vary across those
3481+ languages. For example, certain Cyrillic letters have different shapes in
3482+ Russian text than in Bulgarian. In Latin text, it's common to render "fi"
3483+ with an explicit fi-ligature that lacks a dot on the "i". However, in
3484+ languages such as Turkish which uses both a dotted-i and a dotless-i, it's
3485+ important to not use this ligature or use a specialized version that
3486+ contains a dot over the "i". The example below shows language-specific
3487+ variations based on stylistic traditions found in Spanish, Italian and
3488+ French orthography:
34833489
34843490 < div class =featex > < img alt ="language specific forms, spanish "
34853491 src =locl-1.png > </ div >
@@ -3490,7 +3496,7 @@ <h3 id=language-specific-support><span class=secno>6.2
34903496 < div class =featex > < img alt ="language specific forms, french "
34913497 src =locl-3.png > </ div >
34923498
3493- < p > If the content language of the element is known, according to the rules
3499+ < p > If the content language of the element is known according to the rules
34943500 of the < a
34953501 href ="http://www.w3.org/TR/CSS21/conform.html#doclanguage "> document
34963502 language</ a > , user agents are required to infer the OpenType language
@@ -4639,7 +4645,10 @@ <h3 id=font-feature-values><span class=secno>6.9 </span>Defining font
46394645 union of these rules. This allows a set of named-values to be defined for
46404646 a given font family globally for a site and specific additions made
46414647 per-page. If the same <feature-value-name> is defined mulitple times
4642- for a given font-variant value, the last defined value is used.
4648+ for a given < a href ="#propdef-font-variant "
4649+ title ="font-variant!!property "> ‘< code
4650+ class =property > font-variant</ code > ’</ a > value, the last defined value is
4651+ used.
46434652
46444653 < pre >
46454654site.css:
@@ -4681,8 +4690,12 @@ <h3 id=font-feature-values><span class=secno>6.9 </span>Defining font
46814690 Each property value that is font specific is clearly marked as such.
46824691 Feature value names follow the rules of CSS user identifiers and are
46834692 case-sensitive. They are unique only for a given set of font families and
4684- font-variant property value; the same identifier used with a different
4685- font-variant property value is treated as a separate and distinct value.
4693+ < a href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
4694+ class =property > font-variant</ code > ’</ a > property value; the same
4695+ identifier used with a different < a href ="#propdef-font-variant "
4696+ title ="font-variant!!property "> ‘< code
4697+ class =property > font-variant</ code > ’</ a > property value is treated as a
4698+ separate and distinct value.
46864699
46874700 < p > Using a commonly named value allows authors to use a single style rule
46884701 to cover a set of fonts for which the underlying selector is different for
@@ -4703,9 +4716,11 @@ <h3 id=font-feature-values><span class=secno>6.9 </span>Defining font
47034716 font-variant: annotation(circled);
47044717}</ pre >
47054718
4706- < p > Most font specific font-variant property values take a single value
4707- (e.g. swash). The character-variant property value allows two values and
4708- styleset allows an unlimited number. If a larger number of values are
4719+ < p > Most font specific < a href ="#propdef-font-variant "
4720+ title ="font-variant!!property "> ‘< code
4721+ class =property > font-variant</ code > ’</ a > property values take a single
4722+ value (e.g. swash). The character-variant property value allows two values
4723+ and styleset allows an unlimited number. If a larger number of values are
47094724 assigned to a given name, a syntax error occurs and the entire
47104725 <font-feature-values-declaration> is ignored.
47114726
@@ -5065,20 +5080,26 @@ <h3 id=font-variant-prop><span class=secno>6.11 </span>Overall shorthand
50655080 < td > see individual properties
50665081 </ table >
50675082
5068- < p > The ‘< code class =property > font-variant</ code > ’ property is a
5069- shorthand for all font-variant subproperties. The value < dfn
5070- id =font-variant-normal-value title ="normal!!font-variant "> ‘< code
5071- class =property > normal</ code > ’</ dfn > resets all subproperties of
5072- font-variant to their inital value. The < dfn id =font-variant-none-value
5073- title ="none!!font-variant "> ‘< code class =property > none</ code > ’</ dfn >
5074- value sets ‘< a href ="#propdef-font-variant-ligatures "> < code
5083+ < p > The < a href ="#propdef-font-variant "
5084+ title ="font-variant!!property "> ‘< code
5085+ class =property > font-variant</ code > ’</ a > property is a shorthand for all
5086+ font-variant subproperties. The value < dfn id =font-variant-normal-value
5087+ title ="normal!!font-variant "> ‘< code
5088+ class =property > normal</ code > ’</ dfn > resets all subproperties of < a
5089+ href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
5090+ class =property > font-variant</ code > ’</ a > to their inital value. The < dfn
5091+ id =font-variant-none-value title ="none!!font-variant "> ‘< code
5092+ class =property > none</ code > ’</ dfn > value sets ‘< a
5093+ href ="#propdef-font-variant-ligatures "> < code
50755094 class =property > font-variant-ligatures</ code > </ a > ’ to ‘< code
50765095 class =property > none</ code > ’ and resets all other font feature properties
50775096 to their initial value. Like other shorthands, using < a
50785097 href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
5079- class =property > font-variant</ code > ’</ a > resets unspecified font-variant
5080- subproperties to their initial values. It does not reset the values of
5081- either ‘< a href ="#propdef-font-language-override "> < code
5098+ class =property > font-variant</ code > ’</ a > resets unspecified < a
5099+ href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
5100+ class =property > font-variant</ code > ’</ a > subproperties to their initial
5101+ values. It does not reset the values of either ‘< a
5102+ href ="#propdef-font-language-override "> < code
50825103 class =property > font-language-override</ code > </ a > ’ or < a
50835104 href ="#propdef-font-feature-settings "
50845105 title ="font-feature-settings!!property "> ‘< code
@@ -5438,9 +5459,11 @@ <h3 id=feature-precedence><span class=secno>7.2 </span>Feature precedence</h3>
54385459
54395460 < li > Font features implied by the value of the < a
54405461 href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
5441- class =property > font-variant</ code > ’</ a > property, the related
5442- font-variant subproperties and any other CSS property that may use
5443- OpenType features (e.g. the ‘< a href ="#propdef-font-kerning "> < code
5462+ class =property > font-variant</ code > ’</ a > property, the related < a
5463+ href ="#propdef-font-variant " title ="font-variant!!property "> ‘< code
5464+ class =property > font-variant</ code > ’</ a > subproperties and any other CSS
5465+ property that may use OpenType features (e.g. the ‘< a
5466+ href ="#propdef-font-kerning "> < code
54445467 class =property > font-kerning</ code > </ a > ’ property).
54455468
54465469 < li > Font features implied by the value of < a
@@ -5755,9 +5778,11 @@ <h2 class=no-num id=acknowledgments>Acknowledgments</h2>
57555778 of character variant usage for displaying text on Byzantine seals. Ken
57565779 Lunde and Eric Muller provided valuable feedback on CJK OpenType features
57575780 and Unicode variation selectors. The idea for supporting font features by
5758- using font-variant subproperties originated with Håkon Wium Lie, Adam
5759- Twardoch and Tal Leming. Elika Etemad supplied some of the initial design
5760- ideas for the < a
5781+ using < a href ="#propdef-font-variant "
5782+ title ="font-variant!!property "> ‘< code
5783+ class =property > font-variant</ code > ’</ a > subproperties originated with
5784+ Håkon Wium Lie, Adam Twardoch and Tal Leming. Elika Etemad supplied some
5785+ of the initial design ideas for the < a
57615786 href ="#at-font-feature-values-rule "> < code > @font-feature-values</ code > </ a >
57625787 rule. Thanks also to House Industries for allowing the use of Ed Interlock
57635788 in the discretionary ligatures example.
0 commit comments