Re: [css3-fonts] Orthogonality relationships in generic font families

On Wednesday 2008-08-27 22:32 +0200, Nicholas Shanks wrote:
> The ‘monospace’ generic family should be seen as orthogonal to ‘serif’ 
> and ‘sans-serif’ in the generic font‐family fallback keywords. Both 
> monospace, and its converse ‘proportional’ would be allowed to be 
> specified in conjunction with serif or sans‐serif (in either order). 
> Proportional is to be assumed if absent.

You'd need to be a little careful with conformance requirements
here, since for some languages (e.g., Chinese, Japanese, Korean)
basically everything is monospace.  (Or close to it... I'm not
really an expert on that.)

> Similarly, the introduction of the ‘proportional’ keyword is to override 
> the inherited monospace state (in my example all elements in the 
> headerdoc class would also be in the comment class). It would not alter 
> the serif/sans‐serif axis state, so the sans‐serif state of class 
> .comment would be inherited when not explicitly stated.

Having half the state be inherited even when the property is
specified doesn't really fit with the CSS processing model.  Is this
really essential to meet your requirements?

This proposal poses some interesting backwards compatibility issues.
However, they're not so horrible if:

 * we relax (how much?) the restriction that only one generic
   family is allowed in a 'font-family' list (at the end)

 * we assume that there aren't any fonts called "monospace serif",
   "sans-serif monospace", etc.

Do the metadata in fonts and the platform APIs used to access those
metadata typically allow access to the information needed to
implement this?

It's also not clear what these would do for some other languages
that don't necessarily make these distinctions; serif vs. sans-serif
there is already a bit odd.  If there's information in font metadata
that gives this, then the font designers for those languages
probably have a convention for mapping serif and sans-serif to some
other characteristic.  But if there's not, it's probably quite hard
for this to be implemented just for Latin script, never mind for
lots of other scripts.


L. David Baron                       
Mozilla Corporation             

Received on Wednesday, 27 August 2008 20:54:01 UTC