Re: [csswg-drafts] [css-position-3] Absolute positioning - Is the new inset & auto-size behaviour web-compatible? (#11195)

The CSS Working Group just discussed `[css-position-3] Absolute positioning - Is the new inset & auto-size behaviour web-compatible?`, and agreed to the following:

* `RESOLVED: change stretch alignment case to allow the size to stretch when the normal alignment case allows stretching`

<details><summary>The full IRC log of that discussion</summary>
&lt;emilio> oriol: this was discussed a few weeks ago and I couldn't attend<br>
&lt;emilio> ... not sure if the consequences of the resolution were fully understood<br>
&lt;miriam> present<br>
&lt;emilio> ... the implication is that you can have an abspos with auto margins that if it has normal alignment it'd stretch, but if you change self-alignment to be stretch, then it will stop stretching<br>
&lt;emilio> ... I think that doesn't really make sense and would just cause confusion<br>
&lt;emilio> ... in flex and grid auto margins don't stretch even if they have stretch alignment<br>
&lt;emilio> ... but this happens both for stretch and normal alignment<br>
&lt;emilio> ... so I think it's better to have abspos be consistent<br>
&lt;emilio> ... and avoid having the align-self: stretch align with flex / grid<br>
&lt;emilio> ... also the argument for making consistent with flex/grid feels weak<br>
&lt;emilio> ... in block layout auto margins don't prevent block level items<br>
&lt;emilio> ... from stretching<br>
&lt;emilio> ... so I'd like to change the previous resolution<br>
&lt;emilio> ... so that if they stretch with normal alignment they also stretch with stretch alignment<br>
&lt;emilio> fantasai: whichever way we go we are going to introduce inconsistencies<br>
&lt;emilio> ... in terms of alignment I think being consistent with flex/grid is more important because that's what authors are used to<br>
&lt;emilio> ... in block layout only blink has implemented and it's very recent so we can probably change it<br>
&lt;emilio> ... for normal we're stuck with css2, but for the other keywords it'd introduce inconsistencies<br>
&lt;emilio> ... are you proposing that auto margins are stronger than centering in flex/grid but not abspos? That seems like a bad idea<br>
&lt;emilio> ... I think maybe changing stretch only is better than the current situation, I admit it's quite weird that stretch is less stretchy than normal<br>
&lt;fantasai> s/I think//<br>
&lt;emilio> oriol: not sure the right way to look at this is props winning over other<br>
&lt;emilio> ... the way i see it is both margin and alignment have some effect simultaneously<br>
&lt;emilio> ... e.g. both may affect the auto size to be fit-content<br>
&lt;emilio> ... also auto-margins work by changing the margin box and alignment works in terms of that box<br>
&lt;emilio> ... so if you have auto margins that fills the whole container alignment won't do anything, but it's not like it is disabled<br>
&lt;emilio> ... it's more like it doesn't matter which value you use<br>
&lt;emilio> ... whether we decide that self-alignment forces auto size to be fit-content or auto margins do that I think it's independent decisions<br>
&lt;emilio> ... and it's not like some values win and they don't<br>
&lt;emilio> s/they/don't<br>
&lt;emilio> s/they/some<br>
&lt;emilio> ... e.g. even tho in flex and grid auto margins prevent stretching<br>
&lt;emilio> ... then center alignment could prevent stretching even with a 0 margin<br>
&lt;emilio> ... so we could say that center alignment is "winning" over the 0 margin<br>
&lt;emilio> ... so what wins and loses can be subjective<br>
&lt;emilio> ... I prefer seeing it as different things applying simultaneously<br>
&lt;emilio> fantasai: so iiuc, if you have auto margins and stretch, the first thing you do is stretch<br>
&lt;emilio> ... then auto margins end up having no effect (unless max-size is involved)<br>
&lt;emilio> oriol: exactly<br>
&lt;emilio> ... so in this case for abspos neither auto margins nor stretch alignment force fit-content size (so it can stretch)<br>
&lt;emilio> ... typically alignments won't matter because auto margins will resolve to 0 and then alignment would do nothing<br>
&lt;emilio> ... but if you have a max-size then you can align stuff using the alignment properties<br>
&lt;emilio> fantasai: I think that makes sense. There's a weird clause about negative and auto in this case, need to go back and check, but should be fine<br>
&lt;emilio> astearns: so prev resolution is no change to the spec, what should the spec say<br>
&lt;emilio> oriol: a way to word could be "change stretch alignment case to allow the size to stretch when the normal alignment case allows stretching"<br>
&lt;emilio> astearns: makes sense, wdyt fantasai?<br>
&lt;emilio> fantasai: yeah<br>
&lt;emilio> +1<br>
&lt;emilio> RESOLVED: change stretch alignment case to allow the size to stretch when the normal alignment case allows stretching<br>
</details>


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


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 14 May 2025 16:16:54 UTC