Я недавно ударил головой об этой проблеме. У меня есть параллаксные полосы в дизайне, и пользователи iOS сообщают, что фоновые изображения в этих а) были ужасно искажены и б) не были параллаксами. У меня нет устройства iOS, поэтому мне пришлось работать с другими, чтобы отладить это, но похоже, что iOS целенаправленно отключает обновления прокрутки, такие как эффекты параллакса, и это происходит как в Chrome, так и в Safari.
Мне не удалось найти способ получить фон параллакса для работы в iOS (хотя я заметил, что есть некоторые SquareSpace и другие сайты, которые достигли эффекта, заменив их на масштабированные встроенные изображения, что было более сложным и временным что я хотел бы попробовать что-то, что должно просто работать). Поэтому вместо этого я решил просто отключить эффект параллакса для iOS, сбросив значение background-attachment для прокрутки этих элементов только на iOS. Поскольку Modernizr определяет функцию и не браузеры, я должен был использовать этот скрипт для обнаружения всех IOS устройств, а затем установить стиль CSS для переопределения фиксированного значения:
https://gist.github.com/jsoverson/4963116
Тогда мой CSS является:
.device-ios .parallax-strip {
background-attachment:scroll !important;
}
Это не идеальный (это зависящий от устройства хак, и он понижает опыт), но, учитывая враждебность Apple к параллаксу на iOS (возможно, потому, что это влияет на производительность), я думаю, что смогу жить с ним.
Надеюсь, что это поможет кому-то еще.
выглядит так, как показано на версиях 3.2 и выше http://caniuse.com/background-img-opts Я не думаю, что Modernizr проверит это. – Davidicus
У меня был аналогичный вопрос один раз: https://stackoverflow.com/q/36518845/5641669 – Johannes