TL;DR: iOS Safari is more than an inconvenience for developers, it’s the fundamental reason interoperability has been stymied in…
You must log in or register to comment.
Damn, that’s a long list. Looks like a lot of work to collect and prepare.
I was looking for more of an overview of it and selected them from the headlines:
- 2014: Completely broken IndexedDB implementation
- 2015: 100vh (100% viewport height) means a different thing in mobile Safari to everywhere else
- 2016: <body /> with overflow:hidden CSS is scrollable on iOS
- 2017: Safari incorrectly blocks localhost as mixed content when accessed from an HTTPS page
- 2018: OS 11.2.2 broke WebAssembly
- 2018: Safari 11.1 broke MessageChannels
- 2019: Audio stops playing when standalone web app is no longer in foreground
- 2019: PWA in iOS uses old assets after publishing new servicerWorker/assets
- 2020: Add Fullscreen API to iOS (& display fullscreen)
- 2021: Safari shipped blob.stream(), crashes with a NULL pointer exception
- 2021: Appending an element to the shadow DOM in many cases hard crashes the browser process
- 2021: LocalStorage is broken when a page is open in more than one tab
- 2021: IndexedDB APIs hangs indefinitely on initial page load
- 2021: Fetch request streaming is implemented just enough to pass feature detection, but it doesn’t actually work
- 2021: IndexedDB API information leaks
- 2023: Notifications API: support for the badge, icon, image and tag options
- 2024: On-screen keyboard does not show up for installed web apps (PWAs) when focusing a text input of any kind
- 2008: Focus events for non-input elements behave differently in Safari to every other browser
- 2012: Using border-image with border-style: none is rendered completely wrong
- 2014: WebKit doesn’t calculate padding-top/-bottom: n% correctly
- 2014: Pointer events should allow for device-pixel accuracy
- 2017: Support for 120Hz requestAnimationFrame
- 2018: Some Fetch requests incorrectly completely skip the service worker
- 2020: Safari 14 shipped a broken replaceChildren() method, which caused glitches in Construct.
- 2020: When leaving current scope of PWA, back button incorrectly reads “Untitled”
- 2020: Safe-area-inset-bottom still set when keyboard appears
- 2020: Support for background-attachment: local has suddenly completely disappeared
- 2021: IntersectionObserver and ResizeObserver fire in incorrect order
- 2021: Mousemove events fire when modifier keys are pressed, even if the mouse isn’t moved
- 2021: Scrolling in home screen apps incorrectly latches to document
- 2022: WebM Opus support is inconsistent in Safari
- 2022: Installed web app with viewport-fit cover causes overscroll issues, breaks position fixed and -webkit-fill-available
- 2023: iPadOS: Viewport doesn’t correctly restore after dismissing software keyboard for installed web apps
- 2023: iPadOS: window loses focus when dismissing the keyboard, breaks Page Lifecycle API
- 2024: Svh and lvh are incorrect on iOS in third party browsers
DOM query
let a = '' for (let x of document.querySelectorAll('h3 a[title]')) a += x.title + "\n" a