Safari 17.0 does not support css-function as Safari 16.x

I’m talking about CSS-functions: https://w3c.github.io/csswg-drafts/css-values/#round-func)

.example {
  --result: round(up, var(--number), 1);
}

In Safari 16.x css round didn’t work perfect.round(up, x, 1) did its job, if x wasn’t a “natural” number (all digits after the fraction mark 0). If it was, it resulted the next one! Now Safari 17.0 gives 0 for all numbers!

!Update!

Sorry, Safari 17 does round! But: not in code like that:

:root { --result: round(up, var(--number), 1);

Had a project, where this was used to define the number of columns and rows I wanted for an (mostly) quadratic layout. What’s working instead:

  grid-template-columns: repeat(round(up, sort(var(--items), 1), minimal(…);

the former css used the :root-variant (grid-template-columns: repeat(var(--result) …).

!Update 2!

After some experiments I found: Safari 17 doesn’t like :root any more! (https://www.w3.org/TR/selectors-3/#root-pseudo)

And: Safari doesn’t calc correct: `round(up,1,1)˚ is 2 — says Apple. YOU MUST NOT CALC CSS-INTEGERS! CSS-DPI ist ####### ENOUGH!

Replies

CSS is implemented in WebKit, so a bug report at <https://bugs.webkit.org/> is much more likely to get seen.