Re: [csswg-drafts] [css-fonts-5] <meta text-scale> limits (#13557)

The CSS Working Group just discussed `[css-fonts-5] <meta text-scale> limits`, and agreed to the following:

* `RESOLVED: Add NUMBERpx to values of text-scale meta, deprecate 'scale' keyword (and make it optional for conformance).`

<details><summary>The full IRC log of that discussion</summary>
&lt;emilio> fantasai: one of the issues raised internally was that a lot of times authors think they've designed the page to scale but on iOS there's a scale for dynamic type that has a default and some bigger/smaller sizes, but also an extended scale when you turn on a11y settings that the author did not expected<br>
&lt;emilio> ... so we'd like the meta to not be a binary switch and include how big you can handle your font<br>
&lt;emilio> ... so that they can say "I can handle up to 80px" or so<br>
&lt;dgrogan> q+<br>
&lt;emilio> ... and the engine can use other methods to zoom past that if necessary<br>
&lt;Rossen> ack dgrogan<br>
&lt;emilio> dgrogan: makes sense, I understand the problem<br>
&lt;emilio> ... two things I've written in the issue 5 mins ago<br>
&lt;emilio> ... are we planning to do this in addition to the keywords?<br>
&lt;emilio> fantasai: I think it'd replace the keywords<br>
&lt;emilio> ... because otherwise the author will just claim to scale infinitely<br>
&lt;emilio> dgrogan: one issue is that we're shipping that already, can't remove that<br>
&lt;emilio> ... the other thing we've talked about is that when the page has this meta specified we'd simulate the font<br>
&lt;emilio> ... to a random value they should handle<br>
&lt;emilio> ... but yeah we can't unship this<br>
&lt;emilio> fantasai: I'd suggest not ripping it out because it's doing something useful, but pushing it to devrel once we have the new syntax<br>
&lt;emilio> ... so that we can mark it as deprecated<br>
&lt;emilio> ... and we wouldn't ship that<br>
&lt;emilio> ... which would allow to eventually move to the new syntax<br>
&lt;emilio> ... there are other concerns about privacy that we haven't figured out yet<br>
&lt;emilio> ... but I hope we can get to that<br>
&lt;emilio> dgrogan: maybe we can do that in the future and drop it? I can't make promises<br>
&lt;emilio> fantasai: we'd have to see what the compat data is<br>
&lt;emilio> ... but if we introduce this we can introduce pressure to switch over<br>
&lt;emilio> dgrogan: yeah and we can accept the value and see where they are<br>
&lt;emilio> ... so that's a future bridge we'd have to cross<br>
&lt;emilio> ... the other question is, in the OP what do you mean by default size?<br>
&lt;emilio> fantasai: medium<br>
&lt;emilio> dgrogan: cool, I think I'm good then<br>
&lt;emilio> Rossen: so back to your proposal fantasai?<br>
&lt;emilio> fantasai: The question is which lengths would be valid<br>
&lt;emilio> ... do we want just pixels there?<br>
&lt;dgrogan> +1 pixels only<br>
&lt;emilio> emilio: I think pixels is fine<br>
&lt;Rossen> q?<br>
&lt;emilio> emilio: at the end of the day you're comparing against the medium font which computes to pixels<br>
&lt;florian> q+<br>
&lt;emilio> florian: there are use cases to maybe specify a viewport-relative length?<br>
&lt;florian> q-<br>
&lt;emilio> ... if my font is huge but my viewport is huge too it might be fine<br>
&lt;miriam> q+<br>
&lt;emilio> q+<br>
&lt;emilio> ack miriam<br>
&lt;emilio> miriam: I think it's important to understand that there's no way to distinguish between small viewport and zoomed viewport<br>
&lt;emilio> emilio: but I think it's fine, because the zoom size will also scale<br>
&lt;Rossen> ack miriam<br>
&lt;Rossen> ack emilio<br>
&lt;florian> q+<br>
&lt;dbaron> I'd say it's *desirable* that they can't be distinguished because it reduces the number of degrees of variation that need to be *tested*.<br>
&lt;fantasai> emilio: I understand use case of 12vh clamped or something<br>
&lt;fantasai> emilio: But seems complicated. Need to recheck on resize, etc.<br>
&lt;fantasai> emilio: so I think the MVP would just be pixels<br>
&lt;fantasai> emilio: Good enough, I support up to font-size: 80px on any viewport<br>
&lt;fantasai> emilio: and if we need to expand it, could be done. But would be annoying<br>
&lt;fantasai> emilio: Like if rotating your device changes how the page is zoomed<br>
&lt;Rossen> ack florian<br>
&lt;emilio> florian: It's simpler to implement and reason about with pixel values<br>
&lt;emilio> ... but a bunch of responsive designs, idk, up to how many pixels can you handle? it depends on how big is the viewport<br>
&lt;emilio> ... e.g. 10vw<br>
&lt;emilio> ... so if the viewport is tiny don't make the font huge and so on<br>
&lt;emilio> ... and there's no value that would be correct<br>
&lt;miriam> +1<br>
&lt;emilio> ... so authors of responsive pages won't be able to give you a meaningful size<br>
&lt;astearns> ack fantasai<br>
&lt;emilio> fantasai: that's true but also as an author this is just the input we're feeding to the author<br>
&lt;emilio> ... they can use calc() to get whatever output they want<br>
&lt;emilio> ... so they have some complicated font-size for the root with a complicated expression they can clamp it to vh<br>
&lt;emilio> ... we don't need the meta tag to have that functionality<br>
&lt;emilio> florian: I agree but it's about how big they've tested, and about informing the browser of when the site would break<br>
&lt;emilio> fantasai: the site can clamp in the stylesheet if needed<br>
&lt;emilio> ... what would the browser do with that information?<br>
&lt;emilio> florian: it'd clamp the size<br>
&lt;emilio> fantasai: if you're going through that effort in order to get the font clamped, you could do that already<br>
&lt;fantasai> emilio: plus having the unclamped value in MQ is potentially useful<br>
&lt;emilio> florian: with the viewport meta we let authors the width they can handle<br>
&lt;emilio> fantasai: the viewport scales the whole page not just the width<br>
&lt;emilio> ... [missed]<br>
&lt;emilio> ... but if you're going through the trouble to make the font not go over the size<br>
&lt;emilio> florian: they're not going through the trouble of anything, just informing the browser<br>
&lt;emilio> ... I think having v* units in addition to pixel<br>
&lt;emilio> ... would be useful<br>
&lt;emilio> ... it's not broken to have just pixels, just insufficiently useful<br>
&lt;emilio> Rossen: what if we started with pixels and add viewport units later?<br>
&lt;emilio> florian: sure<br>
&lt;emilio> +1<br>
&lt;emilio> florian: I think the risk is that either (1) authors will test as you expect their size until certain screen width<br>
&lt;emilio> ... but if the page is on a different screen width they'll clamp sizes at widths that they can't handle<br>
&lt;emilio> ... or (2) they'll claim they support up to 24px to prevent it<br>
&lt;emilio> ... the later is a bit harder<br>
&lt;emilio> fantasai: I don't think providing viewport units fix this tho<br>
&lt;iank_> you could imaging a media query type syntax for &lt; 1024px i support this font-size.<br>
&lt;emilio> Rossen: we're going a bit in circles<br>
&lt;fantasai> fantasai: if the author didn't think about that case, they didn't think about it. Providing viewport units won't change that.<br>
&lt;miriam> this would be helped a lot with good dev tools<br>
&lt;emilio> iank_: you could imaging a media query type syntax for &lt; 1024px i support this font-size<br>
&lt;emilio> (srcset-like?)<br>
&lt;fantasai> PROPOSED: Add NUMBERpx to values of text-scape meta, deprecate 'scale' keyword (and make it optional for conformance).<br>
&lt;emilio> emilio: or just supporting the media attribute on the meta tag?<br>
&lt;miriam> authors right now handle `medium` by assuming it's just always `16px` :(<br>
&lt;fantasai> s/scape/scale/<br>
&lt;dgrogan> +1<br>
&lt;fantasai> PROPOSED: Add NUMBERpx to values of text-scale meta, deprecate 'scale' keyword (and make it optional for conformance).<br>
&lt;emilio> RESOLVED: Add NUMBERpx to values of text-scale meta, deprecate 'scale' keyword (and make it optional for conformance).<br>
&lt;fantasai> emilio: What about supporting the media attribute on the &lt;meta>?<br>
&lt;fantasai> florian: It's nice in CSS that you have different units in CSS<br>
&lt;fantasai> florian: can approximate it with mq but not nice<br>
&lt;fantasai> emilio: A lot of layouts have breakpoints<br>
&lt;fantasai> emilio: could have both<br>
&lt;fantasai> lea: need both, mq is for dramatic changes and units are for interpolation<br>
</details>


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


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

Received on Thursday, 2 April 2026 20:25:37 UTC