Re: Unprefixing intrinsic size keywords (-moz-min-content et al)
fantasai <[email protected]>
| Newsgroups | gmane.comp.mozilla.devel.layout |
|---|---|
| Message-ID | <[email protected]> |
On 08/27/2015 05:49 PM, L. David Baron wrote: > On Thursday 2015-08-06 09:42 -0700, [email protected] wrote: >> We (blink) would like to unprefix the intrinsic sizing keywords: >> https://drafts.csswg.org/css-sizing/#width-height-keywords >> >> We support them for widths and for heights (though they all do the same thing for heights) >> >> We were wondering what Gecko's plans for those keywords is -- are you also interested in unprefixing? Are you happy with the keywords as specced? Would you rather stop supporting them? > > I'm largely happy with them; they were my idea (under different > names) originally, although that proposal predated serious work on > vertical writing modes, which makes things a bit more complicated. > I haven't looked closely at the relevant specs lately, but I think > the controversial spec parts are the actual definitions of intrinsic > sizes, whereas the spec for the keywords is pretty trivial. Though > at a quick glance I think the spec at > https://drafts.csswg.org/css-sizing/#width-height-keywords for fill, > max-content, min-content, and fit-content is fine, at least for the > inline-size direction. (This of course requires that the actual > definitions exclude the effects of the (min-/max-/)(width/height) > properties, which I believe they do.) > > My biggest concern is probably what they mean when used in the block > direction. I'm not sure we currently do anything sensible there, or > that the spec has sensible definitions for max-content, min-content, > and fill-available sizes there. The CSSWG resolved (possibly re-resolved? I couldn't find the original minutes, though I recall discussing the issue) on this here: https://lists.w3.org/Archives/Public/www-style/2015Aug/0109.html I think 'fit-content' can be safely thrown in with min/max-content. For 'fill', I'm less sure we're solid. A quick test strategy would be: 1. Fill a box wit content and give it properties P 2. For the min-content test * assign it 'width: min-content' in the test * assign it a zero-width container in the reference 3. For the max-content test * assign it 'width: max-content' in the test * assign it maximally large container in the reference 4. For the fit-content test * assign it 'width: fit-content' in the test * leave its container as auto 5. Make the reference boxes all 'float: left' or something else to give them shrinkwrapping behavior. as long as the test and reference match for all content C and all properties P, the implementation of the keywords is correct, even if the layout algorithms aren't quite there yet. :) ~fantasai