Движок WebKit живет в своей реальности. Он консервативен, капризен и обожает игнорировать стандарты.
Вот наш топ-3 проблем, из-за которых хочется разбить телефон об стену:
1️⃣ Резиновый скролл (Overscroll).
В iOS страница тянется, даже когда контент закончился. Ты делаешь фиксированный хедер или попап, а пользователь свайпает вниз — и видит «дыру» в верстке. Контент под
position: fixed начинает вылезать и дрожать.Safari считает это фичей, мы — багом. Лечится только жесткой блокировкой скролла скриптами, иначе сайт выглядит сломанным.
2️⃣ Лотерея с видео.
Хотите поставить красивый фон на первый экран? Safari скажет «нет».
Политика Apple жестко блокирует автоплей. Забыли атрибут
playsinline? Видео не запустится. Включили режим энергосбережения? Видео встанет колом.Приходится писать кучу условий, чтобы пользователь не увидел черный квадрат вместо вау-эффекта.
3️⃣ Эффекты и анимация «на ощупь».
Парадокс: Apple придумала глассморфизм, но Safari хуже всех его рендерит.
Сложные
backdrop-filter вызывают артефакты или просто отключаются.А нативные CSS-анимации — это вообще русская рулетка. То, что плавно едет в Chrome, в Safari дергается или мерцает. Приходится настраивать тайминги вслепую и обвешивать код хаками вроде
will-change и transform: translateZ(0), просто чтобы заставить браузер работать нормально.В IZUM мы не спорим с Купертино, мы адаптируемся.
🛠 У нас есть негласное правило: задача не закрыта, пока её не потыкали на реальном айфоне.
Клиенту не важно, что Apple «думает иначе». Ему нужен работающий продукт.
Поэтому мы молча делаем двойную работу: одну для всего мира, и вторую — специально для Safari.
👇 Признавайтесь: какой баг Safari отнял у вас больше всего нервов?
Делитесь в комментариях, устроим перекличку пострадавших.
