Vertical Floats vs. exclusion stacking

> On Nov 14, 2015, at 1:47 AM, Johannes Wilm <johanneswilm@vivliostyle.com> wrote:
> 
> Ok, so for now we only have one proposal (the one based on exclusions) and your proposal is to simply have that use a different property than "float". 

And I'm not even saying (yet) that my proposal is the best or only solution to the use case need, merely that exclusions and floats should not be mixed together in the same property, due to their very different processing models. 

I could also envision another alternate proposal of having automatically created regions as the result of 'top', 'bottom', or 'side' in the second value of 'float'. Thus, 'float: left top' would put the element into an automatically created region at the top of the containing block, column, column box, region, or page (as specified by a 'float-reference' kind of thing, or maybe as a third value of 'float'), and then would act like a normal 'float left'. 'float: right bottom side' would put the float into an automatically created region at the right side of the containing block, column, column box, region, or page, stacked vertically and aligned with the bottom of the region. Or maybe it would be better as a separate property, like 'move-to: bottom right', and then allow floating or not using the existing 'float' values. Anyway, it's just an idea so far, please don't ask for all the details right now. 

> I can see how that would make sense.

Great! I'm sorry to everyone that it took me so many emails and words to explain it. 

> I am not sure it is needed, but it may be. Definitely something that should be discussed once Tab/Elika have read up on floats.

BTW, I realized that there is another noticeable way that your stacked exclusions create different results than existing floats. If I understand it correctly, when you have 'float: right' on a page float, it puts subsequent right floats to the right (inline flow direction) of previous right floats. But existing right floats stack from right to left. 

I actually prefer your way for this, which keeps the visual order the same as the source order, but it would be very surprising if this happened as a side effect of turning a regular inline float into a page float. It's another reason to keep exclusion stacking and inline floats as separate properties. 

Received on Saturday, 14 November 2015 17:00:58 UTC