Сайты для iPhone - а как насчет других платформ?

Недавно я читал учебное пособие по Крису Койеру из блога http://css-tricks.com/ № 38: Основы и советы по проектированию для iPhone. Излишне говорить, что я был очень взволнован и предложил парню, что я делаю некоторую работу с обезьяной кода, для того, чтобы мы могли теперь предлагать сайты iPhone его клиентам. Он сказал круто, а как насчет других мобильных устройств? хороший вопрос. Так в чем же заключается разработка веб-сайтов для Android, Blackberry, WindowsMobile и т. Д.? Люди беспокоятся о других платформах? Благодарю.

1 ответ

Решение

Недавние Webkit и Opera:

Для iPhone Safari, Opera Mobile и Webkit на Android разработки похожи ( но не идентичны), и разработка для них довольно проста.

Вы можете положиться на CSS2.1 и JavaScript+DOM (но будьте осторожны с событиями пользовательского интерфейса). Вы можете обойтись без обслуживания вашего обычного веб-сайта с помощью нескольких изменений в таблицах стилей.

Хитрость заключается в обслуживании этих таблиц стилей. Не использовать User-Agent строка

Поскольку некоторые мобильные браузеры читают портативные носители, а некоторые настаивают на стилях экрана и делают вид, что имеют экран шириной 960 пикселей (iPhone:/), вам нужно будет предоставить мобильную таблицу стилей с обоими:

<link media="handheld" ...>
<link media="screen and max-device-width:480px" ...>

Последний - CSS3 Media Query - очень полезный и работает с другими мобильными браузерами (вы можете использовать его в таблицах стилей с @media {}).

Не полагайтесь на :hover или же onmouseover потому что эти события не работают на сенсорных экранах.

onclick задерживается, mousemove может не работать Пользовательские виджеты DHTML (выпадающие списки, ползунки) и drag'n'drop не будут работать на сенсорных экранах, если вы не используете сенсорные события (которые, к счастью, были приняты во всех новейших браузерах).

Viewport

В дополнение к фирменной компании Apple (и IMHO негибким и нарушающим разделение между разметкой и макетом) <meta name=viewport> взгляните на CSS3 @viewport, который в настоящее время поддерживается в последней версии Opera как @-o-viewport и, надеюсь, другие последуют.

Симуляторы / эмуляторы

Чтобы проверить страницу в Opera Mobile, получите симулятор (или просто более старую версию рабочего стола и выберите "Вид" → "Маленький экран").

Opera Mini особенная, поскольку CSS немного переформатирован, а DHTML выполняется на стороне сервера, что не всегда дает ожидаемые результаты. Доступен симулятор.

Android

Вам нужен Android SDK, возиться с командной строкой, чтобы запустить его неуклюжий пользовательский интерфейс, загрузить кучу пакетов, создать виртуальное устройство с дюжиной неуместных неясных настроек, набраться терпения, чтобы этот монстр загрузил и превратил вентиляторы компьютера в квадрокоптер, а затем вы можете выполнить sss..sss..slooowlyyyy тест в "Браузере" (мой Intel i5 слишком медленный, чтобы имитировать Galaxy Tab - браузер "перестает отвечать" даже до того, как я закончу набирать URL)

Проще достать телефон / планшет с Android и протестировать на реальном устройстве (но избегайте эквивалента плеера Samsung "iPod", так как это мусор с устаревшим программным обеспечением).

Браузер Android действительно причиняет боль всем, кто не любит Linux, - просто чтобы прочитать консоль JS, вам нужно поиграться с удаленными отладочными соединениями и фильтрацией журналов в командной строке.

Firefox Mobile (ранее Fennec)

Доступен симулятор (ссылки для "Windows / Mac OS X / Linux" ниже для мобильных загрузок - это не версия для ПК, а для мобильных устройств для ПК).

Симулятор очень простой, сам по себе Mobile Firefox действительно хорош, например overflow:scroll отлично работает, в то время как в браузерах на основе WebKit реализация переполнения варьируется от очень не интуитивно понятной и полностью сломанной.

Карманный IE:

PIE для Windows Mobile < 7 - это не то же самое, что IE в Windows. Он в основном такой же примитивный и глючный, как и IE4, но (едва) поддерживает некоторые удивительно продвинутые свойства, такие как display:table,

Он читает как handheld а также screen Таблицы стилей одновременно нарушают стандарт и стреляют себе в ногу. Если вы собираетесь поддерживать пирог, то поместите ссылку на handheld Таблица стилей последняя и обратная / переопределить все правила из стилей экрана в ней.

Во всяком случае, он мертв и трудно получить эмулятор.

Windows Phone 7 в настоящее время поставляется с IE7-подобным, и Microsoft обещала кое-что уровня IE9 позже.

Новый (меньшинство) BlackBerry

Последний браузер BlackBerry на базе WebKit достаточно хорош, вы можете относиться к нему как к первоклассному гражданину (см. Сравнение WebKits, приведенное в верхней части).

В настоящее время наиболее популярны BlackBerry & OpenWave, Blazer и т.д.:

До BB OS6 это кошмар. Работает только базовый HTML. CSS работает на некоторых моделях, но примитивен и не работает. JavaScript работает только на некоторых моделях, и он невероятно медленный и отсутствует (забудьте даже о базовом DHTML).

Бесплатный бесплатный симулятор BB от RIM (надоедливая регистрация). Если вам не повезло, он запустится правильно один раз, а затем вам придется полностью переустановить его:)

То же самое относится и к сотням других мобильных браузеров на недорогих телефонах (на базе подобных OpenWave, у которой есть достойный симулятор). Вам нужно подготовить для них 1-колоночный базовый урезанный HTML-сайт.

Google Wireless Transcoder

Даже если вы создадите отличный (X)HTML, оптимизированный для каждого мобильного устройства, пользователи Google Mobile Search никогда его не увидят! Вместо этого каждая страница будет передаваться через "Беспроводной транскодер", который жестоко прерывает код, удаляя все таблицы стилей и скрипты (независимо от того, поддерживает ли их браузер или нет), и даже <font>:(

Другие вопросы по тегам