Re: [css3-flexbox] Revert min-width back to an initial value of 0

(I've had several similar interactions, FWIW)

So I think a large motivation for this min-size:auto feature was that it
made it the default "flex-shrink:1" behavior less painful.

If we drop the min-size magic, should we make flex-shrink default to 0
instead of 1, to prevent mysteriously-shrinking/overlapping flex items?

~Daniel

On 02/14/2013 02:25 PM, Tab Atkins Jr. wrote:
> After a lot of feedback, I think we should revert min-width's initial
> value back to 0.
> 
> Our intention for the min-width behavior was admirable - in most
> situations it wouldn't affect anything, but when the author didn't
> take small sizes into account, they'd overflow the flex container
> rather than just shrinking to nothing, and the user could just scroll.
> 
> Unfortunately, both assumptions are violated in practice.
> 
> One of my coworkers has been using Flexbox for quite a while to build
> internal analytics displays, and nearly all of the problems he has
> with Flexbox end up being that he needs to apply a min-*: 0 somewhere.
>  I helped troubleshoot something *today* where that happened, and it
> was extremely difficult to figure out because there were nested
> flexboxes, and they *all* needed to have the right behavior before the
> page stopped breaking.  In the meantime, because the initial value for
> 'overflow' is "visible", not "auto", there's no indication of what's
> actually going wrong, and no way to scroll to the overflowing stuff.
> 
> Then, this afternoon, I got *another* coworker asking me about the
> exact same problem - things weren't shrinking when he thought they
> should be.
> 
> These are not isolated cases.  As far as I can tell, pretty much
> everyone hits this on their first attempts at using flexbox, and it's
> not at all clear what's causing the problem or how to fix it.  This is
> simply a major usability hazard, and in my experience vastly outweighs
> the minor edge-case usability boon it was intended to provide.
> 
> Based on this experience, I think we should revert this decision, and
> remove the special 'min-*' behavior from Flexbox.  Everything should
> default to 0 min size.
> 
> Chrome strongly supports this change, as Ojan has been yelling at me
> about it for months. ^_^
> 
> ~TJ
> 

Received on Thursday, 14 February 2013 22:39:55 UTC