I've been saying this for years, and it gets down voted occasionally, but safari/webkit feels like the new IE6. I know Chrome is very bullish with adding extra features and is aggressively pushing some standards, but I've rarely had to write "workarounds" or hacks for Chrome when writing web-standard compliant code for other browsers, but I've had to frequently do it for Safari.
It's been a few years since I've had battle Safari quirks, one example that stuck with me from a couple of years ago is that LocalStorage is not available in private browsing mode. Other browsers just treat it as ephemeral/SessionStorage basically.
Also I remember our Sentry being _littered_ with random React internals throwing (it was like a couple of different things), but it was only ever iOS that had those issues.
>It's been a few years since I've had battle Safari quirks, one example that stuck with me from a couple of years ago is that LocalStorage is not available in private browsing mode. Other browsers just treat it as ephemeral/SessionStorage basically.
so what's the spec say people should do? Does it not specify?
Well I have known a few things on accessibility and color spaces where Safari was way ahead for a good length of time so my theory has always been that they were ahead on the things they cared about and behind on the things that they didn't care about and depending on what you cared about they might seem like jerks or heroes.
I haven't looked into this deeply; but for several years now Jen Simmons has been posting stats in which Safari is either the top scorer for interop, or is very close to the top. For example: https://front-end.social/@jensimmons/115749303356986835
I do not know enough to tell whether this means that modern Safari has finally stopped being the new IE6, or that she is just doing marketing that misleadingly focuses on some features, while other, more frustrating and more deeply rooted, issues remain.
Chrome probably has the benefit of being updated frequently rather than more of an annual cycle. But Safari still isn't anywhere near IE6 levels of awfulness.
> LocalStorage is not available in private browsing mode. Other browsers just treat it as ephemeral/SessionStorage basically.
Correction: it’s not available in Firefox either, throws on get/set. It’s the Chromium family that’s the odd one out, but it’s so popular and testing in other browsers’ private windows so uncommon that developers often don’t realise that localStorage is fallible.