Re: [css-gcpm][css-figures] float-offset & line rhythms

Alan Stearns wrote:

 > >  http://books.spec.whatwg.org/#baseline-rhythms
 > 
 > I am quite interested in baseline grids. The example renderings in your
 > proposal are a bit confusing - is there a specific browser where they
 > render correctly?

There are no shipping implementations of this feature yet. However,
it's been discussed for years:

 [1] http://lists.w3.org/Archives/Public/www-style/2009Jan/0010.html
 [2] http://www.w3.org/TR/css3-linebox/#line-stacking-strategy
 [3] http://dev.w3.org/csswg/css-line-grid  

 > Your proposal has one named grid - ‘root’. I’m wondering whether you’ve
 > considered allowing more than one named grid. The grid established by a
 > parent element isn’t always what’s needed, in my opinion.

Yes, named grids were in CSS Books a few weeks back. It's also used in
[3]. It was removed for the following reasons:

  - to avoid semi-weird namespace issues like "you can use any name
    you want except 'root', 'inherit' ... "

  - due to feedback from a developer who didn't like having to define
    scope in CSS again:

      Then we have counter scopes created by counter-reset, and they
      are appalling bad, impossible to explain, probably about three
      people in the world can describe them accurately from memory,
      and it took us years to get our implementation correct, as
      simple as they are.

    (I happen to like the things you can do with counter scope, but I
    could probably not describe them accurately from memory :)

  - one can easily set the same rhythm by setting the same font &
    line-height properties. This would cover most use cases, I think.

 > Consider a layout where you have two floated boxes of text. You want the
 > baselines in both floats to align to each other. I would like to be able
 > to say that the first baseline and line-height in the first float
 > establishes a baseline grid that the content in both floats will align to.
 > And I want that first baseline in that first float to be positioned
 > normally - having it align to the float’s parent grid or the body grid
 > could move the line down farther from the top of the float than I want.

If the two floats are next to each other along the baseline axis, you
should be able to establish the same baseline rhythm for the two of
them by setting the same font/line-height etc.

If they are not next to each other, I'm not sure it matters much that
their baselines are not aligned. By making the second float align to
the baseline established by the first float you risk moving lines
further down that you want to in the second float. So, I don't think
introducing <ident> really solves the problem -- aligning to a common
parent or root seem to have the same benefits.

Cheers,

-h&kon
              Håkon Wium Lie                          CTO °þe®ª
howcome@opera.com                  http://people.opera.com/howcome

Received on Saturday, 25 January 2014 22:21:48 UTC