Я разрабатываю кроссплатформенное мобильное приложение, используя jQueryMobile и PhoneGap. Первая платформа, на которую я ориентируюсь, — это Android.
Для приложений Android разработчикам рекомендуется использовать dp в качестве единицы измерения размера шрифта. DP означает независимые от плотности пиксели. Его использование означает, что ваши шрифты получают одинаковый физический размер (в дюймах, сантиметрах и т. д.) на экране, независимо от плотности экрана.
Замечательно. Теперь интересно: если я укажу все в dp, как хотел бы Android, будут ли другие браузерные платформы поддерживать этот блок? Я предполагаю, что нет.
Это заставляет меня задаться вопросом, что не так со старыми способами (или обходными путями) установки шрифта на физически абсолютный размер:
<сильный>1. PT: одна pt равна 1/72 дюйма.
Так что это физически абсолютный размер, верно? Это звучит слишком хорошо, чтобы быть правдой. Если это надежно и поддерживается во всех браузерах и устройствах, зачем делать что-то еще?
<сильный>2. EM: один em определяется как размер шрифта документа.
Таким образом, с PT размер является абсолютным с самого начала. Используя em в качестве единицы размера шрифта, мне нужно было бы только установить размер шрифта для документа таким образом, чтобы он подходил для экрана (я мог бы использовать для этого Javascript). И если все остальное указано в em, мне конец. Верно?
<сильный>3. jQueryMobile* Тем временем я использую медиа-запросы CSS для определения ширины, высоты и плотности экрана и использую их для установки базового размера шрифта для элемента. После этого все размеры шрифта в em. Во многих сообщениях предлагается использовать em только для шрифтов, но если ваше приложение/сайт полностью посвящено тексту, не имеет ли смысла для всех элементов, содержащих текст, задавать размеры в em?
<сильный>4. Или...
Поддерживается ли dp также «настольными» браузерами и iOS? РЕДАКТИРОВАТЬ: Нет, это не так.
Спасибо за любую мудрость.