mobile_gerasimyk PPTX, 2 МБ

advertisement
Особенности разработки мобильных сайтов
Антон Герасимюк
Ведущий разработчик
Битрикс
Основная идея Bitrix Mobile 2.0
• Разработка под iOS и Android: дорого, сложно и долго
• Зато мы умеем хорошо делать сайты
• Выход: гибридное приложение
• Front-end – Bitrix Mobile
• Back-end – мобильный сайт
Платформы iOS 5.1+ и Android 2.3+
• Полноценный браузер c поддержкой HTML5 и CSS3
• Мечта верстальщика – один браузер WebKit
• Небольшая ложка дегтя: популярность Android 2.3
Мобильный сайт в рамках CMS
• Создаем новый шаблон сайта с подключением Bitrix Mobile
• Создаем шаблоны компонентов
• Настраиваем шаблон сайта на отдельную директорию
(например, /mobile/)
Особенности верстки
Понятие Viewport’а
• По умолчанию, мобильный
браузер отобразит страницу
так же, как браузер на
desktop-экране шириной
980 (800) пикселов
• Затем страница
масштабируется так, чтобы
она умещалось на экране
Особенности верстки
Понятие Viewport’а
• Специальный мета-тег viewport
позволяет указать, как браузер
должен масштабировать
страницу
Особенности верстки
Понятие Viewport’а
• Атрибут viewport может содержать множественные
значения, разделенные запятой:
• initial-scale – коэффициент масштабирования, в котором
пользователь изначально видит страницу
• maximum-scale/minimum-scale – макс./мин. коэф-т
масштабирования, до которого пользователь может
увеличить/уменьшать страницу
• user-scalable – может ли пользователь сам масштабировать
страницу
• width/height - ширина/высота viewport’а (окна браузера)
Альбомная и портретная
ориентации
• content="width=device-width"
или
content="width=320"
Альбомная и портретная
ориентации
• content="initial-scale=1.0"
при условии
• html {-webkit-text-size-adjust:none}
Особенности верстки
Работа с формами
• Можно использовать следующие типы
тега <input type=“тип”>
• date/datetime
• time
• email
• month
• number
• telephone
• url
• Range
• В iOS полная поддержка, в Android частичная (зависит от
версии ОС и прошивки производителя)
• Кроссплатформенно: использовать API Bitrix Mobile
Особенности верстки
Запуск внешних программ
• Поддержка протоколов tel:, mailto:, sms:, skype:
Особенности верстки
Полезные CSS-свойства
• Градиенты:
• -webkit-linear-gradient, -webkit-radial-gradient
• Тени:
• text-shadow, box-shadow
• CSS-трансформации
• -webkit-transform
• border-image – создание рамки вокруг элемента с
помощью 9-grid картинки
• background-size – растягивание фона
• Главное не переборщить!
iPad и разные разрешения
• Сложный путь: отдельные шаблоны для разных разрешений
экранов
• Простой путь: увеличение масштаба через мета-тег viewport,
шлифовка через media queries
• Bitrix Mobile приложение будет передавать на сервер:
• Размеры экрана
• Retina/Non-retina
• Версия ОС
• Версия приложения
• Pixel Ratio
• и др.
Особенности Javascript
• В iOS выполнение ограничено 10 секундами
• В iOS событие onscroll срабатывает только после того, как
закончилось скроллирование и пользователь отпустил палец
• Нативная поддержка alert(), confirm(), prompt()
• Обработка касаний
• ontouchstart, ontouchmove, ontouchend, ontouchcancel
• Жесты (масштабирование и поворот)
• gesturestart, gestureend, gesturechange
• Смена ориентации
window.onorientationchange = function(){
alert(window.orientation);
}
Верстка под Android
• Обводка текстовых полей зеленым или оранжевым
бордюром не отключается
• Увеличение текстовых полей по высоте не отключается
• Особенности старых версий Android (2.3)
• Градиенты через -webkit-gradient
• Тени через -webkit-box-shadow
• нельзя использовать multiple background (в айфоне
можно)
• для border-image по возможности использовать stretch
вместо repeat
• перед свойством box-sizing добавляем -webkit-box-sizing
Retina Display
• Retina-дисплей – маркетинговый слоган компании Apple
• Пиксельное соотношение (pixel ratio) – отношение
физического пикселя к виртуальному
• iPhone’ы и iPad’ы имеют пиксельное соотношение 1.0 и 2.0
• Android от 1.5 до 2.25
Retina Display
Оптимизация графики
• Сложный путь: два комплекта графики
Retina Display
Оптимизация графики
• Простой путь: один комплект графики под Retina
Адаптивная верстка
Media Queries
• Другой подход к созданию мобильного сайта: media queries
Адаптивная верстка
Media Queries
• Media Queries в CSS
Отладка
• iOS 6.0+
• WebInpector Safari 6.0
• Android
• WebInspector Chrome
+ Android SDK
• Универсально
• Weinre – Web Inspector Remote
• Используется в онлайн-сервисе
http://debug.phonegap.com/
Полезные ресурсы
•
•
•
•
Safari Web Content Guide
iOS Human Interface Guidelines
Android Web Apps Guide
Видео-доклад про Retina-дисплеи
http://events.yandex.ru/talks/363/
Заключение
• Bitrix Mobile – новая платформа для разработки
мобильных приложений
• Разработчик создает мобильный сайт, тестируя его через
демо-приложение
• 1С-Битрикс компилирует приложение с нужными
атрибутами бренда (название, иконки, логотип) и
добавляет в AppStore и Google Play
• Клиент получает нативное приложение под iOS и Android
для своего сайта
Спасибо за внимание!
Вопросы?
Антон Герасимюк
e-mail: co@bitrix.ru
twitter: @compote
Download