Contact emails

moon...@google.com, dr...@google.com

Explainer

https://developer.mozilla.org/en-US/docs/Web/CSS/font-variant-position

Specification

https://drafts.csswg.org/css-fonts-4/#propdef-font-variant-position

Summary

The font-variant-position CSS property controls the use of alternate,
smaller glyphs that are positioned as superscript or subscript.
Motivation

Font-variant-position property allows users to control usage of typographic
superscript and subscript glyphs.

Currently font-variant-position is implemented without synthesis
functionality and affects only fonts that have superscript or subscript
glyphs (“sups”/”subs” opentype feature); i.e. if the font doesn’t have
superscript/subscript then setting font-variant-position to “super”/“sub”
won’t synthesize superscript and subscript glyphs, therefore won’t change
anything.

Subscript and superscript glyphs can be also activated using the
font-feature-settings property, however using font-variant-position
property might be more reasonable since it cascades like a regular CSS
property and with the font-feature-settings, if the element inherits the
“sups” or “subs” value, users need to activate/deactivate other features
that were also defined in font-feature-settings of the parent element.

Implementing the synthesis part would be complex and it is questionable if
it is worth the cost since synthesized glyphs may look unnatural and
synthesis of the font-variant-position property is at risk in the spec
<https://drafts.csswg.org/css-fonts-4/#:~:text=The%20following%20features,variant%2Dposition%20property>.
Also Safari supports font-variant-position property without synthesis
functionality as well.

This feature is implemented behind the ‘experimental’ flag and is part of
Interop 2022. Shipping this feature will provide a higher stable score for
Interop and will decrease the stable vs. experimental score
difference.Since Chrome is the last browser to ship this, this will enable
broader usage of the feature on the web.

Blink component

Blink>Fonts
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EFonts>

Search tags

font-variant-position
<https://chromestatus.com/features#tags:font-variant-position>, subscript
glyphs <https://chromestatus.com/features#tags:subscript%20glyphs>, superscript
glyphs <https://chromestatus.com/features#tags:superscript%20glyphs>, sub
<https://chromestatus.com/features#tags:sub>, super
<https://chromestatus.com/features#tags:super>

TAG review

Already shipped in other browsers, see below, no TAG review required.

TAG review status

Not applicable, existing standard, shipped in other UAs

Risks

Interoperability and Compatibility

Gecko: Shipped/Shipping

https://bugzilla.mozilla.org/show_bug.cgi?id=1024804 Gecko has implemented
the feature with the synthesis functionality.

WebKit: Shipped/Shipping

https://bugs.webkit.org/show_bug.cgi?id=148413 WebKit has implemented the
feature without the synthesis functionality.

Web developers: No signals

Other signals: -

Activation

None expected; Feature already implemented in other browsers.


Debuggability

Same as any other CSS property, css_properties.json will be rolled to
DevTools during development.


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, Chrome OS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?

Yes, following tests are testing property implementation:

https://wpt.fyi/results/css/css-fonts/font-variant-position.html

https://wpt.fyi/results/css/css-fonts/font-variant-position-01.html

https://wpt.fyi/results/css/css-fonts/font-variant-position-02.html

https://wpt.fyi/results/css/css-fonts/font-variant-position-03.html

https://wpt.fyi/results/css/css-fonts/parsing/font-variant-position-valid.html

https://wpt.fyi/results/css/css-fonts/parsing/font-variant-position-computed.html

https://wpt.fyi/results/css/css-fonts/parsing/font-variant-valid.html

Flag name

FontVariantPosition

Requires code in //chrome?

False

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1212668

Estimated milestones

No milestones specified


Anticipated spec changes

None expected


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5067180721307648

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAAO7W_C-aHBXYr1mp%3DiJkTQEPgP-isxxv-u-Uv%3DyO4Mp9b_j5Q%40mail.gmail.com.

Reply via email to