Re: [css-logical-properties] the 'inline-{start,end}' values for 'float' and 'clear'

> On Dec 19, 2015, at 5:30 AM, Johannes Wilm <johanneswilm@vivliostyle.com> wrote:
> 
> On Sat, Dec 19, 2015 at 12:07 AM, Brad Kemper <brad.kemper@gmail.com <mailto:brad.kemper@gmail.com>> wrote:
> 
>> On Nov 14, 2015, at 1:47 AM, Johannes Wilm <johanneswilm@vivliostyle.com <mailto:johanneswilm@vivliostyle.com>> wrote:
>> 
>>> Typically, the horizontal direction comes first, and the vertical one second, when the values represent 2d axes. Given the western-centric preference in CSS (for initial values, etc), this would translate to inline direction first and block direction second. 
>>> 
>>> 
>>> Well, but we need to be able to stack in both directions.
>> 
>> Ah, I think I see the problem. 'Right top' puts it in the top right corner,  but doesn't say where to put the next 'right top' float. Underneath, or to the left? Is this the issue?
>> 
>> Yes
>>  
>> I think word order is too subtle to use for that, and is an anti-pattern. You instead need another value, either to add as a third part ('wrap-stack: right top inline', if 'wrap-stack' is the property name for creating float-like positioned exclusions) or in a separate property (wrap-stack-direction: inline).
>> 
>> I think that could work. This is another point we should discuss in December.
>> 
> 
> So I was thinking:
> 
> Supposing the main property name is ‘wrap-stack’ instead of ‘float’, and it could take 2 values, one for vertical and one for horizontal (or logical equivalents)…
> 
> By default, items moved to the corners would stack in the block direction away from that corner. So, ‘wrap-stack: start start’ would start in the top left corner (if we assume English or other Latin-based written language) and subsequent items with that same value would stack downwards.
> 
> This default would be expressed in CSS as an initial value of ‘block’ for a property called ‘wrap-stack-direction’ on the containing block. Then if you wanted to change it, you would do ‘wrap-stack-direction:inline’, and the exclusions would stack in the inline direction away from the corners.
> 
> Because the wrap-stack-direction’ is set on the containing block, not the floater (“stacker”?), we would avoid weird stair-step arrangements. All stacking within a page (or other fragmentainer) would be either horizontal or vertical. 
> 
> The problem is that you don't know how many pages you have, so it's hard to target them correctly.
> 

Is it usually the stacker that determines the layout, or the page? I was thinking it was the latter, and thus ‘wrap-stack-direction’ could go into @page. I tend to think more about magazine layouts than book layouts though.

I’m also beginning to wonder if page grids might handle a lot of the book publishing use cases. As in, using ‘grid’ property inside of @page.

Received on Sunday, 20 December 2015 09:57:18 UTC