Re: [csswg-drafts] [css-transforms-2] `scale` property behavior differs from `scale()` function

The Working Group just discussed ``[css-transforms-2] `scale` property behavior differs from `scale()` function``, and agreed to the following resolutions:

* `RESOLVED: In the 2d case a single value is in both x and y and in 3d the z is always 1 (Option b)`

<details><summary>The full IRC log of that discussion</summary>
&lt;dael> Topic: [css-transforms-2] `scale` property behavior differs from `scale()` function<br>
&lt;dael> github:<br>
&lt;dael> birtles: The sumamry is that the scale property takes 1 2 or 3 numbers. Q is what it should do when you spec 1 number. We have 4 possibilities.<br>
&lt;TabAtkins> scale:2, what does it expand to?<br>
&lt;TabAtkins> (a) scale: 2 1 1;<br>
&lt;dael> birtles: One is the remaining numbers become 1. That's current spec. Very simple from syntax and consitant if doing 2d or 3d.<br>
&lt;dael> birtles: Disadvantage is it's inconsistant with scale from transform prop where if you only do 1 number scales in x or y and it's quite unintuitive.<br>
&lt;TabAtkins> (b) scale: 2 2 1<br>
&lt;dael> birtles: 2nd is to make the second value match the first and last value be 1 so you don't scale in z. More complex for syntax and inconsistant between 2d and 3d.<br>
&lt;dael> birtles: But I think it's intuitive in 2d case which is most common.<br>
&lt;TabAtkins> (c) scale: 2 2 2;<br>
&lt;dael> birtles: 3rd which we dismissed is make all numebrs the same so scale(2) is scaling in x, y, and z<br>
&lt;dael> birtles: 4th is to make scale property only take 2 values and possible introduce a scale 3d property.<br>
&lt;TabAtkins> (d) scale: 2 2, but add scale-3d:2 that expands into scale-3d:2 2 2;<br>
&lt;dael> birtles: I lean options 2 but 4 might be interesting.<br>
&lt;dael> Rossen_: Can you expand on why #3 was ruled out? What was it introducing in 3d. If you set scale in a single value that's in all 3 dimensions<br>
&lt;dael> birtles: In most impl as soon as there's a 3d component it makes it an active layer. Changable, but non-trivial.<br>
&lt;dael> TabAtkins: Other 2 transform properties follow principle that if you spec less you get 2d and more you get 3d. Would be confusing if scale worked differently<br>
&lt;dael> dbaron: What about option of disallowing a single but allowing 2 or 3 values and determining 2d and 3d based on number of values<br>
&lt;dael> TabAtkins: Reasonable option.<br>
&lt;dael> birtles: Reasonable but a little less then intuitive but also not consistant with scale function so authors may assume it will work.<br>
&lt;dael> fremy: When we started impl in edge I found it confusing that when you spec 1value it only scales in 1 direction. Seems reasonable to scale in 2 directions when spec one value. I'm not sure why we care about 3d for these individual transforms. i'm at a loss why we'd do 3d for these. Anyone doing 3d will use transform not scale.<br>
&lt;dael> fremy: I'm in favor of matching scale.<br>
&lt;dael> TabAtkins: I strongly disagree where order is very important in 2d as well as 3d. So you have to think about order no matter what.  3d version is no less..the order is no less max intuitive for 3d. It's still roughly the thing you want to do if you're using them sep.<br>
&lt;dael> TabAtkins: It makes jsut as much sense in 2d or 3d and order matters jsut as much so no reason to shut off 3d.<br>
&lt;dael> eric: I'm in favor of birtles suggestion<br>
&lt;dael> nainar: I agree with TabAtkins that we shouldn't turn off 3d. Anyone working in 3d is working in all 3 values and if you want to scale in 3 directions you have to say so explicitly. Doens't seem like a painpoint.  Default should be simplier 2d where scale 2 means scale in both 2d directions<br>
&lt;alex_antennahouse> +1 (b)<br>
&lt;nainar> s/nainar/??<br>
&lt;dael> ??: Can we reasolve on b? anyone not like b?<br>
&lt;smfr> s/??/smfr/<br>
&lt;dael> Rossen_: B is in the 2d case a single value is in both x and y and in 3d the z is always y. correct?<br>
&lt;dael> smfr: Yes.<br>
&lt;dael> Rossen_: Any objections or opinions again?<br>
&lt;AmeliaBR> s/is always y/is always 1/<br>
&lt;TabAtkins> (previous nainar was ameliabr, but I'm not sure if  a regex will hit it now; I forget whether stacked regexes work)<br>
&lt;dael> RESOLVED: In the 2d case a single value is in both x and y and in 3d the z is always 1 (Option b)<br>

GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at using your GitHub account

Received on Thursday, 8 February 2018 00:37:35 UTC