Re: [csswg-drafts] [css-grid] Setting of gutter properties when using the 'grid' shorthand

The CSS Working Group just discussed `grid-gap`, and agreed to the following resolutions:

* `RESOLVED: add gap shorthand`
* `RESOLVED: Tables are not changed`
* `RESOLVED: Add gap properties to align spec`

<details><summary>The full IRC log of that discussion</summary>
&lt;astearns> topic: grid-gap<br>
&lt;fantasai> https://github.com/w3c/csswg-drafts/issues/1696<br>
&lt;fantasai> https://github.com/w3c/csswg-drafts/issues/1036<br>
&lt;astearns> github: https://github.com/w3c/csswg-drafts/issues/1036<br>
&lt;dauwhe> TabAtkins: we decided that grid gutter should be reset by shorthand<br>
&lt;astearns> zakim, open queue<br>
&lt;Zakim> ok, astearns, the speaker queue is open<br>
&lt;dauwhe> ... authors have given feedback that the opposite is true<br>
&lt;dauwhe> ... so are annoyed to reestablish their gutters<br>
&lt;dauwhe> ... so we propose to change that, and stop resetting gutters in shorthand<br>
&lt;dauwhe> fantasai: that's the basis of that<br>
&lt;dauwhe> ... the other issue is 1969<br>
&lt;dauwhe> s/1969/1696/<br>
&lt;dauwhe> TabAtkins: the grip prop is already complex<br>
&lt;dauwhe> ... worst case is having some gutters you didn't intend<br>
&lt;dauwhe> ... a proposal to handle this and other author feedback is to rework how we handle gutters<br>
&lt;dauwhe> ... rename them and apply them to all layout modes where it makes sense<br>
&lt;dauwhe> fantasai: we had originally designed them for multicol<br>
&lt;dauwhe> TabAtkins: didn't make sense for column gap to be reset by grid<br>
&lt;dauwhe> fantasai: so we undo the link, undo grid prefix<br>
&lt;dauwhe> ... make colgap and rowgap apply to flex containers<br>
&lt;dauwhe> ... this is highly desired<br>
&lt;dauwhe> TabAtkins: they want  min spacing between flex items and flex lines,<br>
&lt;dauwhe> fantasai: one comment is can we have one set of properties to make it easy to learn<br>
&lt;dauwhe> astearns: is it hard to change flex distro algo?<br>
&lt;dauwhe> TabAtkins: it's easy<br>
&lt;dauwhe> fantasai: as a last point, nice to obsolete border-spacing<br>
&lt;dauwhe> ... controls spaces between cells, and it inherits<br>
&lt;dauwhe> TabAtkins: it's the only layout property that inherits<br>
&lt;dauwhe> fantasai: if we could redesign, it wouldn't inherit, and would be logical<br>
&lt;dauwhe> TabAtkins: normal would be zero by default, in grid and flex, and 1em in multicol<br>
&lt;astearns> q?<br>
&lt;dauwhe> ... because all the gridgap stuff has shipped, so we have to keep<br>
&lt;Rossen> the gap property is coming! https://lemontree.se/wp-content/uploads/2014/10/titles-Mind-the-Gap-Large.jpg<br>
&lt;dauwhe> ... only thing we break will be grid gap reset<br>
&lt;dauwhe> fantasai: we need shorthand for column gap and grid gap<br>
&lt;dauwhe> Florian_: column-gap would be shorthand for grid-column-gap etc<br>
&lt;dauwhe> fantasai: none of them inherit<br>
&lt;dauwhe> bdc: there's a proposal for a new gap shorthand?<br>
&lt;dauwhe> fantasai: the proposal is to alias grid-row-gap<br>
&lt;dauwhe> astearns: it's not temporary<br>
&lt;dauwhe> fantasai: it might be permanent<br>
&lt;dauwhe> ... the goal is to use column-gap and row-gap, and have a shorthand for the two of them<br>
&lt;dauwhe> fremy: track-gap<br>
&lt;dauwhe> fantasai: people are using shorthand more often<br>
&lt;dauwhe> ... we'll have to run some data, but we might be able to remove the longhands<br>
&lt;dauwhe> TabAtkins: one less alias to maintain<br>
&lt;dauwhe> Florian_: weird to use grid stuff to reset your flex<br>
&lt;dauwhe> SimonSapin: they would be aliases?<br>
&lt;dauwhe> TabAtkins: one is shorthand of the other<br>
&lt;dauwhe> fantasai: page-break properties are shorthands of the break-* properties<br>
&lt;dauwhe> SimonSapin: so these would be shorthands with one longhand each<br>
&lt;dauwhe> TabAtkins: they'd both access the same underlying value<br>
&lt;dauwhe> SimonSapin: what happens in CSSOM?<br>
&lt;fantasai> SimonSapin, https://www.w3.org/TR/css-break-3/#page-break-properties<br>
&lt;dauwhe> astearns: sounds like there are 3 things<br>
&lt;dauwhe> ... 1 changing what's set by grid shorthand<br>
&lt;dauwhe> ... 2 adding connection between the various gaps<br>
&lt;dauwhe> ... 3 is some shorthand for all this<br>
&lt;dauwhe> TabAtkins: 4 doing table cleanup<br>
&lt;dauwhe> ... but it would be nice to have everything use same gaps<br>
&lt;dauwhe> astearns: are there any objections to changoing grid shorthand to not reset column and row gaps?<br>
&lt;dauwhe> Resolved: change what grid shorthand resets<br>
&lt;dauwhe> dbaron: who will be first to implement?<br>
&lt;dauwhe> Rossen: we'll do it<br>
&lt;dauwhe> bdc: might not break anything<br>
&lt;dauwhe> astearns: will only change behaviour if they set gaps, used shorthand, etc<br>
&lt;dauwhe> rachelandrew: most people are not using shorthands<br>
&lt;dauwhe> plinss: they do whatever you tell them to :)<br>
&lt;dauwhe> astearns: so edge is willing to go first?<br>
&lt;fantasai> s/whatever/pretty much whatever/<br>
&lt;dauwhe> ... we're yet to release the updated grid<br>
&lt;fantasai> s/them to/them to do at this point/<br>
&lt;dauwhe> Rossen: I wish we didn't have to do the aliases<br>
&lt;dauwhe> astearns: the second thing: any more discussion on column-gap and row-gap applying to all layout modes with gaps?<br>
&lt;dauwhe> astearns: there will be a communication issue<br>
&lt;dauwhe> iank_: which layout modes?<br>
&lt;dauwhe> TabAtkins: multicol, grid, flex, and maybe table<br>
&lt;dauwhe> fantasai: multi-col, grid, and flex all respond to the column-gap and row-gap properties<br>
&lt;dauwhe> dbaron: which property has the normal value?<br>
&lt;dauwhe> TabAtkins: column-gap and row-gap<br>
&lt;dauwhe> ... for multicol it will be 1em, which is no change<br>
&lt;dauwhe> astearns: what does column-gap normal due in grid and flex?<br>
&lt;dauwhe> TabAtkins: Zero<br>
&lt;dauwhe> s/due/do/<br>
&lt;dauwhe> dbaron: column-gap already has a normal value<br>
&lt;dauwhe> astearns: we're adding normal to row-gap<br>
&lt;dauwhe> dbaron: this is renaming thing for grid back to the old multicol things<br>
&lt;dauwhe> TabAtkins: yes<br>
&lt;dauwhe> dbaron: same syntax?<br>
&lt;dauwhe> TabAtkins: yep<br>
&lt;dauwhe> ... adding normal keyword to row-gap<br>
&lt;dauwhe> fremy: do we need grid-row-gap and grid-column-gap<br>
&lt;dauwhe> ... they are not interoperable<br>
&lt;dauwhe> TabAtkins: why<br>
&lt;dauwhe> fremy: in the sense that lots of browsers don't support grid<br>
&lt;dauwhe> ... so there are not a lot of websites that use grid, and they were made in the last six months<br>
&lt;dauwhe> TabAtkins: maybe,<br>
&lt;dauwhe> fremy: to me this is a breaking change<br>
&lt;dauwhe> TabAtkins: if they are using grid-column-gap etc it will break things<br>
&lt;dauwhe> ... we need to look into how often they are use<br>
&lt;dauwhe> ... default to safe answer of aliasing them<br>
&lt;dauwhe> Rossen: can we resolve?<br>
&lt;dauwhe> astearns: any other comments on using these in grid, flex, and multicol<br>
&lt;fantasai> I agree with Tab, let's keep the aliases for now but look into dropping them<br>
&lt;dauwhe> dbaron: this is new feature for flex?<br>
&lt;dauwhe> TabAtkins: this is the most requested feature for flex<br>
&lt;dauwhe> bdc: the gap shorthand property is part of this resolution?<br>
&lt;dauwhe> astearns: we will have a shorthand, we're just not sure what it's called<br>
&lt;dauwhe> fantasai: we don't have to figure it out now. one thing at a time<br>
&lt;dauwhe> fantasai: proposed resolution; existing column-gap and new row-gap with same syntax apply to flex, grid, and multicol, and alias to current props<br>
&lt;dauwhe> dbaron: is handling of percentagges between the two consistent?<br>
&lt;dauwhe> Florian_: multicol didn't have percentage until recently<br>
&lt;dauwhe> ... not implemented yet<br>
&lt;dauwhe> ... spec says % should work in multicol<br>
&lt;dauwhe> TabAtkins: the definitions are identical<br>
&lt;dauwhe> astearns: no concern?<br>
&lt;dauwhe> TabAtkins: they're the same<br>
&lt;dauwhe> astearns: any objection?<br>
&lt;dauwhe> Resolved: column-gap and row-gap apply to flex, grid, and multicol<br>
&lt;dauwhe> bdc: we could use gap as the shorthand<br>
&lt;dauwhe> TabAtkins: do we have three letter properties?<br>
&lt;dauwhe> astearns: options for shorthand are "gap" or pre=existing "grid-gap"<br>
&lt;dbaron> the only 3-letter properties in Gecko are 'top' and 'all'.  A whole bunch of 4-letter ones, though...<br>
&lt;dauwhe> astearns: we have to maintain grid-gap as shorthand, but that could be a discoverability problem<br>
&lt;Rossen> https://lemontree.se/wp-content/uploads/2014/10/titles-Mind-the-Gap-Large.jpg<br>
&lt;dauwhe> astearns: the proposal is to add a shorthand for column-gap and row-gap that is just gap and aliased to grid-gap<br>
&lt;dauwhe> fremy: I don't know if we have a shorthand aliased to a shorthand<br>
&lt;glazou> LOL<br>
&lt;dauwhe> myles: the question isn't that you have it, it's that you can do it :)<br>
&lt;fantasai> s/Resolved/RESOLVED/<br>
&lt;dauwhe> astearns: any objection?<br>
&lt;dauwhe> fantasai: I think it's unnecessary aliasing, but I won't object<br>
&lt;dauwhe> Rossen: there's probably not a ton of content out there,<br>
&lt;dauwhe> ... I would prefer not to ship grid-gap at all<br>
&lt;dauwhe> ... I don't mind aliasing the grid ones for a while<br>
&lt;dauwhe> ... given this is six months of a feature, I'd be surprised if we couldn't do this<br>
&lt;dauwhe> rachelandrew: I'll update all my stuff. I've already tweeted :)<br>
&lt;dauwhe> fantasai: rachel and Jen can get the information out there<br>
&lt;dauwhe> ... but they can't create a forcing function for people who've already been trained<br>
&lt;dauwhe> ... but microsoft can do this<br>
&lt;dauwhe> Rossen: that means interop pain for us<br>
&lt;dauwhe> fremy: I'd rather not write a bunch of aliasing code that we're going to remove in six months<br>
&lt;dauwhe> fantasai: it's not going to be difficult for you, it will be difficult for authors<br>
&lt;fantasai> s/difficult/annoying/<br>
&lt;dauwhe> Rossen: I don' think this is a q of implementaiton<br>
&lt;fantasai> s/authors/authors during the transition/<br>
&lt;dauwhe> ... we'll decide about aliases internally<br>
&lt;fantasai> s/microsoft can do this/microsoft can do this by not shipping grid-*-gap/<br>
&lt;dauwhe> ... I won't promise we'll ship without grid-column-gap etc, but<br>
&lt;dauwhe> astearns: the hope is that we're early enough that we can eventually remove<br>
&lt;dauwhe> Rossen: we'll ship very soon<br>
&lt;dauwhe> Florian_: grid is unusual in that most browsers shipped in a very short time<br>
&lt;dauwhe> ... even though it's only six months, but a lot happened in those six months<br>
&lt;Rossen> s/we'll ship very soon/when we ship/<br>
&lt;dauwhe> iank_: the main compat risk is chrome mobile(???)<br>
&lt;fantasai> TabAtkins, can you run a search on occurrances of grid-row-gap and grid-column-gap?<br>
&lt;dauwhe> astearns: proposed resolution: add gap shorthand<br>
&lt;TabAtkins> fantasai, probably<br>
&lt;dauwhe> RESOLVED: add gap shorthand<br>
&lt;dauwhe> astearns: do we want to talk about tables?<br>
&lt;dauwhe> fantasai: we have a solid proposal<br>
&lt;dauwhe> TabAtkins: a single convenient interface to everything that can have gaps<br>
&lt;dauwhe> dbaron: the weird thing about border space being inherited<br>
&lt;dauwhe> ... applies only to table with border-collapse : separate<br>
&lt;dauwhe> ... border-collapse is inherited<br>
&lt;dauwhe> ... most tables will be separated<br>
&lt;dauwhe> fantasai: unless you are setting column-gap or row-gap on a table already, then there's no effect<br>
&lt;dauwhe> ... the new propoerties don't inherit<br>
&lt;dauwhe> dbaron: if applies to table, then will apply to sides of columns, and row gaps apply to tops/bottoms<br>
&lt;dauwhe> fantasai: we're not saying border-spacing reads out from column-gap<br>
&lt;dauwhe> ... if the value of column-gap is normal, then look at border-spacing prop<br>
&lt;dauwhe> dbaron: that would be weird if it applied inside, but not around edge<br>
&lt;dauwhe> ... the full value plus padding on table element<br>
&lt;dauwhe> fantasai: actions are to have these acts to apply only to the interior<br>
&lt;dauwhe> dbaron: I think that's a bad idea<br>
&lt;dauwhe> TabAtkins: either don't apply at all, or affect outside?<br>
&lt;dauwhe> fantasai: this is low-priority<br>
&lt;dauwhe> TabAtkins: it applys to every table<br>
&lt;dauwhe> astearns: one solution is to not change tables<br>
&lt;dauwhe> ... that's my general rule: don't mess with tables<br>
&lt;dauwhe> fantasai: fallback issue<br>
&lt;dauwhe> ... table displays are used for fallback in flex/grid<br>
&lt;dauwhe> ... since it acts similarly<br>
&lt;dauwhe> ... we will have authors using flex or grid model with these gap properties<br>
&lt;gregwhitworth> q+<br>
&lt;dauwhe> ... in implementations that don't support them, they will fall back to table<br>
&lt;dauwhe> ... but they don't support new gap properties<br>
&lt;dauwhe> gregwhitworth: so it won't matter<br>
&lt;dauwhe> iank_: I find this strange because we're not messing with table<br>
&lt;dauwhe> s<br>
&lt;gregwhitworth> ack gregwhitworth<br>
&lt;dauwhe> astearns: proposed resolution: don't have the new gap properties apply to tables<br>
&lt;dauwhe> TabAtkins: where do these properties go<br>
&lt;dauwhe> RESOLVED: Tables are not changed<br>
&lt;dauwhe> TabAtkins: align is the best place<br>
&lt;dauwhe> ... it only applies to things taht are content-distributed<br>
&lt;dauwhe> ... grid and flex will have sections pointing to this<br>
&lt;dauwhe> astearns: and multicol<br>
&lt;dauwhe> rachelandrew: same as any of the align stuff<br>
&lt;dauwhe> Florian_: we need to fix grid, but just add it to other spec<br>
&lt;dauwhe> TabAtkins: we need a section in grid<br>
&lt;dauwhe> Florian_: in flex maybe not<br>
&lt;dauwhe> astearns: nothing to correct in flex, just informative<br>
&lt;dauwhe> RESOLVED: Add gap properties to align spec<br>
&lt;dauwhe> Rossen: how far along is this spec?<br>
&lt;dauwhe> fantasai: trying to get to cr<br>
&lt;dauwhe> astearns: I think we're done with gaps for now!<br>
&lt;dauwhe> ... are there other grid issues?<br>
&lt;dauwhe> Rossen: Do we want to go over many of them?<br>
&lt;dauwhe> ... we don't have to discuss all of them now<br>
&lt;dauwhe> astearns: keep remaining grid discussion to 30 minutes<br>
&lt;fantasai> https://github.com/w3c/csswg-drafts/issues/1320<br>
&lt;fantasai> https://github.com/w3c/csswg-drafts/issues/1319<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1036#issuecomment-320241018 using your GitHub account

Received on Friday, 4 August 2017 12:53:19 UTC