- From: John Daggett <jdaggett@mozilla.com>
- Date: Tue, 23 Mar 2010 00:38:32 -0700 (PDT)
- To: fantasai <fantasai.lists@inkedblade.net>
- Cc: www-style@w3.org
fantasai wrote: >> Fantasai, could you clarify what you mean by using a new property (e.g. >> 'character-transform') as a shorthand for new property values and >> font-size/vertical-align? >> >> Are you saying that this property is a pseudo-shorthand in that it >> resets other property values but doesn't actually otherwise use their >> values? > > Yes. I'm still unclear on how exactly you thought this would work, I thought I heard you saying fallback would occur to the "normal" font-size/vertical-align swizzling for fonts lacking small-caps glyphs for a given character. Taking your suggestion about reseting font-size/vertical-align, here's what I would propose: ====== Name: character-transform Value: normal | inferior | ordinal | subscript | superscript Initial: normal The values 'subscript', 'superscript', 'inferior', and 'ordinal' imply the appropriate variant glyph is displayed when available in the font (OpenType features: subs, supr, sinf, ordn). When a variant glyph is not available, a simulated version is synthesized using a reduced form of the default glyph. Normal implies use of the default glyph at normal size. When the value is anything other than 'normal', the font-size and vertical-align properties are set to 'inherit'. ====== Defined this way, the semantics of using this property would never change simply because a font lacked subscript/superscript glyphs, simulated fallback would always occur when necessary. Fallback would *not* be to the existing font-size/vertical-align tweak but to a simulated glyph that resembles what a variant glyph would typically look like, similar to the way simulated small-caps works today. Not ideal in any way shape or form, but better than just displaying an unstyled default glyph and losing the semantic nature of subscript/superscript/etc. Default styling for sub/sup: sub { vertical-align: sub; font-size: smaller; line-height: normal; } sup { vertical-align: super; font-size: smaller; line-height: normal; } Using 'character-transform' instead: sub { character-transform: subscript; } sup { character-transform: superscript; } Regards, John
Received on Tuesday, 23 March 2010 07:39:05 UTC