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

Brad Kemper
> On Nov 6, 2015, at 10:09 AM, Johannes Wilm <johannes@fiduswriter.org> wrote:
> 
> 
> 
>> On Fri, Nov 6, 2015 at 6:13 PM, Brad Kemper <brad.kemper@gmail.com> wrote:
>> 
>> 
>>> On Nov 6, 2015, at 8:26 AM, Johannes Wilm <johannes@fiduswriter.org> wrote:
>>> 
>>> Ok, maybe I misunderstood. So "float: none top" will behave the same as "float: left top"? And "float: none bottom" will behave the same as "float: right bottom"?
>>> 
>> 
>> I really feel that you only read the bottom half of my earlier email. I explained all this in detail, including those two specifically in the very first part, and reading it is almost certainly going to be faster than how long it took me to type it on my phone. 
> 
> I have really read your emails. I promise. :)
>  
>> 
>> The short answer is that "float: none top" means you are moving it to the top line and blockifying it, but not floating to the left or right. So the text (and other floats) starts under it. "float: left top" means you are also floating to the left. So the text (and other floats) starts to the right of it. 
> 
> Ok, so by specifying "none" you are making the page float stop being an Exclusion. Other than that it behaves like "float: left top". 
> 
> Given that page floats are exclusions,

Well, that brings up another point. The exclusions spec says that exclusions only work on non-floats. My proposal is NOT making them exclusions. It is keeping the left/right part as-is, and for block floating only moving them to one end of a different line box (and making it a block if there is no right or left floating). 

> a more intuitive way (it would seem to me) of achieving that same result would be to do "float: left top" and "wrap-flow: clear" (that is how you would do it for exclusions, correct?).

To me, it is simpler and more intuitive to keep them as normal floats, since it is the float property we are talking about. It seems more complicated to create a dependency on exclusions, which may or may not work differently than floats for left and right. I'm less familiar with exclusions. Even if they are meant to be a super-class of floats (are they?), it seems odd to use 'wrap-flow: clear' when I haven't 'wrap-flow' at all, just 'float'. I'd rather keep floats self contained, without leaking in properties and dependencies from other drafts-in-progress. 

I'm not opposed to also allowing float-reference, float-defer, etc. from affecting other exclusions, I guess, but I think it would maybe need a different name (float-or-exclusion-reference?). 

> 
>>> If they are the same, then why do we have the "none" at all?
>>> 
>> 
>> They are not the same. The first value of 'none' or 'left' are not the same for existing 'float: left' or 'float: right'. I'm not changing that. The blockifying already happens with that, along with shrink-to-fit width. 
>> 
>> For 'float: none top', I'm keeping the blockification, but not the shrink-to-fit width. shrink-to-fit width would only be for left/right values other than none. 
>> 
>> If you have 'width:100%; box-sizing: border-box;' they would look about the same, aside from maybe how vertical margins collapse or something. 
> 
> 
> -- 
> Johannes Wilm
> Fidus Writer
> http://www.fiduswriter.org

Received on Friday, 6 November 2015 18:52:29 UTC