- From: Daniel Holbert <dholbert@mozilla.com>
- Date: Thu, 15 May 2014 17:53:58 -0700
- To: www-style <www-style@w3.org>
Hi Tab & Fantasai, In the CR version of the resolving-flexible-lengths algorithm[1], step 4 part c is currently: # c. Distribute free space proportional to the flex factors. # If using the flex grow factor and the # remaining free space is positive # [...] # If using the flex shrink factor the # remaining free space is negative # [...] I have two tweaks to this (but the second obsoletes the first). The first tweak is a minor typofix: s/shrink factor/shrink factor and/ The second tweak is: I think we can drop the "and the free space is [positive|negative]" qualifiers completely. We really only need to check whether the free space is nonzero. (And if it is nonzero, its sign *must* be what we want it to be.) We *used* to need to check that the sign matched the type of flexing that we're doing -- and if it didn't match, we'd skip straight to the "fix min/max violations" step and clamp whichever items were too extreme. However, nowadays, we'll have fixed those violations ahead-of-time, in the "Size inflexible items" (a.k.a. "early freeze") step that was added to the spec in the past few weeks. With that early-freeze step, I don't think it's possible for us to hit step 4c with an incorrectly-signed-free-space value anymore. If we're growing, any flex items with absurdly-large flex base sizes (greater than their max-size) will already have been clamped. (and similar for min-size, if we're shrinking) I'd suggest replacing step 4 part c with text like this, using an early 0-check: # c. Distribute free space proportional to the flex factors. # If the remaining free space is 0, skip this step. Otherwise # If using the flex grow factor # [...] # If using the flex shrink factor # [...] (If I'm missing something, though, I'd love to see a counterexample where we actually do need to check whether the sign is positive or negative.) Thanks, ~Daniel [1] http://dev.w3.org/csswg/css-flexbox/#resolve-flexible-lengths-flex-factors
Received on Friday, 16 May 2014 00:54:27 UTC