Re: [csswg-drafts] [css-sizing] Intrinsic min/max block sizes with aspect ratio? (#12333)

The CSS Working Group just discussed `[css-sizing] Intrinsic min/max block sizes with aspect ratio?`, and agreed to the following:

* `RESOLVED: for non replaced elements, while computing the initial block size, min-content, max-content etc. are considered indefinite`

<details><summary>The full IRC log of that discussion</summary>
&lt;kbabbitt> oriol: this is an inconsistency which can be observed in blink and webkit, not in gecko<br>
&lt;kbabbitt> ... blink and webkit have an inconsistent sizing behavior comparing replaced elements and non-replaced<br>
&lt;kbabbitt> ... I posted some examples in the issue<br>
&lt;kbabbitt> ... basically the idea is that since replaced elements dont actually need layout, when having intrinsic kewyord in block axis we can somewhat resolve those intrinsic keywords without having to do additional layout<br>
&lt;kbabbitt> ... process ends up being: first we want to resolve the final inline size<br>
&lt;kbabbitt> ... we may have intrinsic keywords in in line axis, may want tot rtransfer from block asix<br>
&lt;kbabbitt> ... block axis may also have intrinsic keywords<br>
&lt;kbabbitt> ... this is where we have the difference<br>
&lt;kbabbitt> ... non replaced elements ignore intrinsic keywords at this point<br>
&lt;kbabbitt> ... replaced elements resolve them by computing tentative inline size<br>
&lt;kbabbitt> ... first tentative inline size ignoring both sizing properties<br>
&lt;kbabbitt> ... compute tentqtive size in inline axis but not block axis<br>
&lt;kbabbitt> ... can compute final inline size then final block size<br>
&lt;kbabbitt> ... question is, are we fine with having this inconsistency between replaced and non-replaced?<br>
&lt;kbabbitt> ... if we want to align them to be the sasme, we should align replaced with non-replaced<br>
&lt;kbabbitt> ... we need the opposite with ???<br>
&lt;kbabbitt> ... ignore properties, then compute inline size, then compute final size<br>
&lt;iank_> q+<br>
&lt;kbabbitt> ... are we fine with this inconsistent behavior or do we want to align replaced with non-replaced?<br>
&lt;kbabbitt> ... blink and webkit have minor differences but don't align these<br>
&lt;Rossen> q?<br>
&lt;kbabbitt> ... gecko doesn't support intrinsic keywords on replaced<br>
&lt;kbabbitt> iank_: we shouldn't do the double layout for non-replaced<br>
&lt;kbabbitt> ... I'm fine with inconsistency<br>
&lt;kbabbitt> .... with replaced doing this additional behavior<br>
&lt;kbabbitt> ... think it makes more sense in almost all cases s we should just be inconsisitent<br>
&lt;kbabbitt> ... also how you compute replaced isn't particularly well defined that gets into the next issue<br>
&lt;sgill> q+<br>
&lt;Rossen> ack iank_<br>
&lt;kbabbitt> sgill: I think I agree<br>
&lt;Rossen> ack sgill<br>
&lt;kbabbitt> ... with the replaced case it makes sense what is happening<br>
&lt;kbabbitt> ... because we have natrual sizes to fall back on<br>
&lt;kbabbitt> ... in non-replaced you ask for max content size<br>
&lt;kbabbitt> ... and that thing has an apsect ratio<br>
&lt;kbabbitt> ... then it's not as obvous as natrual size case of replaced element<br>
&lt;kbabbitt> oriol: not always grabbing natural block size<br>
&lt;kbabbitt> ... there's an inconsistency between natural size and ?<br>
&lt;kbabbitt> sgill: barring that<br>
&lt;kbabbitt> iank_: webkit's got some interesting behavior here, generally you don't need to layout multiples, you have the information to calculate correctly<br>
&lt;kbabbitt> Rossen: which way are we resolving?><br>
&lt;kbabbitt> oriol: I guess iank_ was favoring the inconsisitency, I'm fine either way<br>
&lt;kbabbitt> oriol: While computing intrinsic inline sizes, resolve intrinsic keywords in block axis ....<br>
&lt;kbabbitt> ... iank_ can you summarize?<br>
&lt;kbabbitt> iank_: for non replaced elements, while computing the initial block size, min-content, max-content etc. are considered indefinite<br>
&lt;kbabbitt> ... for replaced, maybe that's the nextissue for how that works<br>
&lt;kbabbitt> ... does that satisfy what you wanted to get out of this oriol?<br>
&lt;kbabbitt> oriol: yes<br>
&lt;kbabbitt> iank_: other way we could resolve this is work out spec text which reflects the intent of blink's behavior<br>
&lt;kbabbitt> oriol: not sure if I agree that's the next issue but fine with this overall<br>
&lt;kbabbitt> ... trying to follow Blink<br>
&lt;kbabbitt> Rossen: min-content and max-content are considered indefinite for non-replaced items?<br>
&lt;kbabbitt> iank_: ... while computing the initial block size<br>
&lt;kbabbitt> ... how it was minuted<br>
&lt;kbabbitt> RESOLVED: for non replaced elements, while computing the initial block size, min-content, max-content etc. are considered indefinite<br>
</details>


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


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

Received on Wednesday, 1 April 2026 19:06:11 UTC