В последнее время я много занимался разработкой мобильных веб-приложений, и меня по-настоящему потрясли две вещи: количество ошибок (и недостатков), характерных для браузера, и полное отсутствие документации по этим ошибкам при поиске в Интернете. Я мог бы избежать многих из них, просто отказавшись от устройств Android 2.1 и iOS 3, и это может иметь смысл через год, но они все еще представляют достаточно большую часть рынка, в которой я действительно нуждаюсь, чтобы поддерживать их.
Сейчас я использую http://www.caniuse.com там, где могу, но это говорит мне только об отсутствующих функциях HTML5, а не об ошибках. Кроме того, если я хочу глубже понять, что означает «частичная поддержка», я должен перейти на веб-сайты, на которые он ссылается, которые могут содержать или не содержать информацию.
Это несколько ошибок и различий (возможно, не ошибок, но то, что разработчики должны знать), которые я определил:
- Android 2.1 не предотвращает нажатие на элементы, покрытые наложенным элементом.
- Android 2.1 не всегда очищает текст
placeholder
сразу (иногда визуально, иногда незаметно), считая против maxlength
.
- Android 2.1 HTC не запускает события касания, если происходит прокрутка.
- Android 2.1 (и иногда iOS3) может запретить все сетевые подключения на странице после завершения загрузки кэша приложения.
- Android 2.1 поддерживает
background-size
только через -webkit-background-size
.
- Android 2.1 и iOS 3 не имеют правильного стиля для элементов HTML5.
- На устройствах Android элементы
inline-block
будут иногда превышать указанную ширину и перетекать на следующую строку: 33,33% + 33,33% + 33,33%> 100%
- iOS 3 может исключать элементы при переходах translate3D или tranlateX.
- Android 2.2 (одно устройство) иногда отображает переведенные 3D элементы новой страницы поверх старой страницы во время навигации по странице.
Каждая из этих ошибок требовала значительного количества испытаний, экспериментов и часто бесполезных исследований. Я уверен, что есть много коллективных знаний об этих проблемах, связанных с устройствами и версиями, но я не видел, чтобы они направлялись на веб-сайты, как у нас для настольных компьютеров. Кто-нибудь знает какие-нибудь сайты, где есть это?