Как добиться максимальной совместимости с большинством устройств для мобильного сайта? - PullRequest
3 голосов
/ 28 апреля 2011

Я сделал отдельный сайт для смартфонов и теперь нужно сделать отдельный сайт для других старых мобильных телефонов. Как добиться максимальной совместимости с большинством устройств мобильного веб-сайта на старых / маленьких мобильных экранах?

enter image description here

Я думаю использовать

Этот тип документа для HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN"
    "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">

И только поддерживаемые селекторы и свойства Мобильный профиль CSS 2.0

  • Изображения не должны использоваться много и нет должны использоваться прозрачные изображения
  • Javascript не поддерживается в старых мобильные
  • Некоторые селекторы CSS 2.1 не являются совместим в старых браузерах
  • Макет должен быть без фиксированной ширины потому что различные размеры экрана есть
  • Хорошо не использовать внешний CSS. CSS внутри был бы хорош
  • Тип документа HTML 5 не будет поддерживаться, поэтому я буду использовать XHTML Basic 1.1
  • Нет width и float должно быть определено для любого элемента
  • http запросов должно быть очень меньше
  • Нет font-family должно быть определено

Я не уверен в некоторых вещах?

  • Должен ли я использовать спрайты CSS, если это возможно?
  • Должен ли я сделать макет в вместо
  • Встроенный CSS лучше, чем внешний CSS?
  • Должен ли я использовать любой код сброса CSS в стринг из css?
  • Должен ли я использовать utf-8 или ISO?
  • Можно ли использовать форму проверка
  • Если я не дам ссылку, которая открывается новое окно?
  • Нужно ли хорошо использовать em в место px для размера шрифта?

Достаточно ли хороши мои очки?

Хотя я собираюсь прочитать http://www.w3.org/TR/mobile-bp/ в деталях, я также проверил http://html5boilerplate.com/mobile/, но это для всех, включая смартфоны +, но некоторые вещи полезны

Матрицы для смартфонов https://spreadsheets.google.com/spreadsheet/ccc?authkey=CJPSkfwO&pli=1&hl=en&key=tLen0XZBVTziVZBzwwQFxlw&hl=en&authkey=CJPSkfwO#gid=0

Разрешение экрана сотового телефона, отсортировано по марке и модели http://cartoonized.net/cellphone-screen-resolution.php

Но что еще вы посоветуете рассмотреть на личном опыте, есть ли какие-нибудь советы?

Ответы [ 2 ]

4 голосов
/ 03 ноября 2011

Почему вы используете <?xml version="1.0" encoding="UTF-8"?> ??Это заголовок xml, а не html.

О вопросах:

  • Изображения не должны использоваться много, и прозрачные изображения не должны использоваться

Вы можете использовать прозрачный GIF, они несколько поддерживаются.Прозрачный Png, однако, нет.

  • Javascript не поддерживается на старых мобильных устройствах

Это не то, что не поддерживается.Во-первых, JS всегда отключен по умолчанию в старых браузерах.Вторая проблема - это ошибочные реализации JS.Третий фактор заключается в том, что у старых мобильных устройств были ограниченные ресурсы, и, поскольку JS на стороне клиента, это может привести к сбою / замедлению работы телефона.

  • Компоновка должна быть без фиксированной ширины, поскольку экран различных размеровтам

На мобильном телефоне совет ВСЕГДА идти с разметкой текучих сред (в%)

  • Хорошо не использовать внешний CSS.CSS внутри был бы хорош

Встроенный CSS лучше всего подходит для старых устройств, так как у большинства из них проблемы со слишком большим количеством запросов или при применении стилей к DOM.Помните, что они используют EDGE или, что еще хуже, WAP-соединения, которые почти так же плохи, как и коммутируемый доступ.

  • Тип документа HTML 5 не поддерживается, поэтому я буду использовать XHTML Basic 1.1

Вы можете использовать базовый XHTML или даже лучше, <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd">

  • Не следует определять ширину и число с плавающей запятой для любого элемента

Ширина, всегда в%.Поплавок, никогда.Вплоть до S60 3-й FP1 поплавки глючили на Symbians.(N73 работает на S60 3rd и float глючит. На N95 'S60 3rd FP1, float был исправлен в большинстве случаев использования, но все равно ошибался один или другой, в зависимости от использования).То же самое относится к абсолютным и фиксированным позициям.

  • http запросов должно быть очень меньше

Уменьшить, когда это возможно.Больше запросов, больше раз, когда дрянному wap / edge нужно что-то получить, и больше времени на загрузку.

  • Не следует определять семейство шрифтов

Семья и размер - это две вещи, которые раздражают старые устройства.Большинство из них получили свои шрифты и размеры.Например: Motorola V3R / RAZR V3 получил свой собственный шрифт только одного размера (каждая буква составляет около 7 ~ 9 пикселей на экране, если я правильно напомню).Но вы можете объявить Arial, поскольку это обычный шрифт, который будет использоваться, когда браузер его имеет.

  • Должен ли я использовать спрайты CSS, если это возможно?

Избегайте любой ценой.Сокращая количество запросов, вы сталкиваетесь с другой проблемой: ваш макет будет изменчивым, а фоновое положение обычно портится при использовании процентов.А старые Blackberry любят глючить с background-image.

  • Является ли встроенный CSS лучше внешнего CSS?

По моему мнению, да.Так как соединение и рендеринг медленны, если по какой-то причине время ожидания вашего css файла будет (и без того плохое), компоновка будет хуже.

  • Должен ли я использовать любой код сброса css при стратификацииcss?

Раньше я использовал YUI, но в действительно старых браузерах (опять же V3r и рядом) просто не имеет особого значения.Но это хорошо, когда вы показываете клиентам: P

  • Должен ли я использовать utf-8 или ISO?

Действительно зависит от того, как ваш контент,Если вы кодируете все html-объекты (например, при использовании латинских символов), переходите к UTF-8.Если вы не кодируете, попробуйте ISO.Но в любом случае старые браузеры используют собственную кодировку.Проверьте браузер N95, например, вы можете установить свою собственную кодировку, таким образом путаясь с HTML.

  • Можно ли использовать проверку формы?

Избегайте JS, когда это возможно, всегда переходите на сторону сервера.

  • Разве я не должен давать ссылки, открывающие новое окно?

Старые браузеры не поддерживают табуляцию, поэтому даже если вы укажете target = "_ blank", он откроется поверх вашей текущей страницы.Я не напоминаю, когда браузеры S60 поддерживают вкладки, но это своего рода скрытая функция. Например, браузер N95 S60 3rd FP1 webkit не позволяет открывать ссылку в новом окне, но открывает новый тег, если используется _blank. И чтобы пролистать «вкладки», вам нужно нажать клавишу «5».

  • Нужно ли хорошо использовать em вместо px для размера шрифта?

Это хорошо по соображениям приемлемости, когда у вас есть скрипт для увеличения размера шрифта (эти значки A- / A +). Но, как я сказал в , не нужно определять семейство шрифтов вопрос.


Несколько советов:

= Большинство старых браузеров BlackBerry дерьмово, намного хуже, чем IE5-6. Так, например если вы хотите, чтобы в главном контейнере было поле размером 5 пикселей слева и справа, чтобы оно могло отображаться как «центрированное», откажитесь от поля: 0 5 пикселей; и перейдите к границе слева: 5px solid #same_bg_color; border-right: 5px solid #same_bg_color; Печально, но это то, что сделал RIM: /

= Всегда старайтесь, чтобы макет был максимально вертикальным. Не кладите слишком много вещей в одну строку.

= ВСЕГДА делать навигационные привязки в середине текста. Старые устройства перемещаются от привязки к привязке (или «псевдо-мышь» в S60 +), поэтому, если вы дойдете до конца страницы, вам придется нажимать «Вверх» множество раз. Избегайте этого, создав «Перейти к началу» или, что еще лучше, создайте то же самое верхнее меню в нижнем колонтитуле.

= Не связывайтесь со шрифтами в большинстве случаев. цвет, размер, семья не будет работать в большинстве случаев.

= Во всех этих советах рассматриваются «низкие» и некоторые ранние «средние» устройства следующего моего личного уровня устройства:

Высококачественные устройства : Устройства под управлением следующих ОС: iOS, Android, WP7 +, Bada, bbOS 6.0 +

Устройства среднего класса : Устройства, предшествующие устройствам высшего класса. некоторые более поздние серии Symbian S40 и все S60, новейшие Walkman от Sony / Ericsson, прежде чем начали использовать Android.

Младшие устройства : Все остальные, включая WML, WAP1, BlackBerries, Windows Mobile (6.XX или старше), большинство Symbian S40 и старше, все остальное.

0 голосов
/ 28 апреля 2011

Если вам нужно убедиться, что ваш сайт будет работать на всех устройствах, возможно, вы захотите взглянуть на WALL http://wurfl.sourceforge.net/java/wall.php

...