Re: [css-page-floats] First read-through


From: Johannes Wilm
Date: Wednesday, April 8, 2015 at 4:13 AM
To: Alan Stearns
Cc: www-style list, "public-ppl@w3.org<mailto:public-ppl@w3.org>"
Subject: Re: [css-page-floats] First read-through


On Thu, Mar 26, 2015 at 1:43 AM, Alan Stearns <stearns@adobe.com<mailto:stearns@adobe.com>> wrote:

I’d add an issue to section 5 noting that there needs to be much more added here, including how top/bottom and left/right floats interact, and how floats with different float references interact.

I added a note. You mean notes on how exactly the placement is determined of line-start/end floats that are have a float-reference other than inline?

Yes, we need to specify all of the interactions, particularly with floats sized small enough that they could stack in any direction. If I have two float:left elements in a column, and the first has the default inline float-reference and the second has a column float-reference, how do the floats stack? If I have two elements with a column float-reference, one that’s float:top and one that’s float:left, how do those stack in either anchor order?


On deferring floats, I’d be interested in some text that says how this interacts with float stacking.

I have tried to add something simple [2].

If float stacking would already push a float’s position into the next column, does that count as satisfying float-defer:1?

I am not sure I follow.

You’ve defined that float deferring takes place before float stacking, so my question does not apply.

Thinking about this a bit more, you might be able make the distinction between float placement (where stacking rules might place a float in the next fragment) and assigning a float-reference through the float-defer property. A float-defer:1 on a float-reference:page changes the float reference from the page in which the anchor is placed to the next page after the anchor.

The idea is that floats first will be associated with a particular fragmentation based on either the placement of the float reference or, if specified, by float-defer. The placement of the individual floats within a chain of fragmentations will happen from start to end. If a fragmentation is overly full, any float that could not be placed will be defereed to the next fragmentation.

I realize that the placement of floats and determination whether or not a particular float will have to be deferred to a subsequent fragmentation will need a clear description. But I am a little confused as what you feel is needed to describe the connection between float deferrence due to insufficient space and manual float deferrence via CSS rules.


Section 8 do you mean wrap-flow? I’m not sure that wrapping around both sides of a float (presumably with a float-offset) is a good idea.


Yes, the idea was here to make it possible to flow text on both sides of a float. But maybe there is a different way to achieve the same in a better way?

Defining how these new floats wrap content around them needs to be done, but maybe not by making them exclusions. The ‘auto’ value of wrap-flow allows floats to define their own wrapping behavior, so I think that’s still what the initial value of wrap-flow should be. If a float intrudes into two columns they both should wrap around the float. But if a left float is offset into the middle of a column, I think it should still only wrap around the right side.

Thanks,

Alan

Received on Wednesday, 8 April 2015 21:42:31 UTC