Re: [csswg-drafts] [css-rhythm-1] Avoiding accidental double spacing

So here's an idea for avoiding accidental double-spacing, although it doesn't quite work (see below), but i figured it was worth noting down anyway:
* Instead of a `line-height-step: <length>` property that is inherited, have something like `line-height-step: <number> | auto | none` which is not inherited, but that controls a step size (which is conceptually either `none` or a length) that is propagated from ancestors to descendants:
  * the initial value is `auto`, which means the lines of this element use the same step size as the (containing block? / parent?), if any
  * the `none` value means the lines of this element do not use a step size
  * the `<number>` value means this element's step size (a length) is computed based on the element's properties.  Values smaller than 1.0 are invalid (or changed to 1.0).  The step size is computed by computing the height a line box would have if it contained glyphs from **all** fonts in the `font-family` list (given the other font properties), i.e., using the ascent and descent of each, and the `line-height` (which might be normal and thus lead to using external leading), and then multiplying that result by the `<number>` value.

(I'm not particularly happy with the names I've chosen here.)

So the problem with this as that it doesn't actually solve the font fallback problem, since font fallback often fails to find a glyph in the `font-family` and has to fall back to searching for other available fonts.

-- 
GitHub Notification of comment by dbaron
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/938#issuecomment-295610273 using your GitHub account

Received on Thursday, 20 April 2017 07:31:31 UTC