Если ems по сути дает вам результат, который представляет собой процент от базового шрифта, в чем преимущество его использования, а не % для размера шрифта? Я огляделся и не увидел ничего, что означало бы, что они ведут себя по-разному. Есть ли каскадная проблема?

7
Rath_Er 5 Ноя 2015 в 01:06

2 ответа

EM и PERCENT очень похожи, единственное различие между ними можно наблюдать при изменении размера текста в клиентском браузере.

Comparison

Резюме

Теоретически единицы измерения em и rem являются новым стандартом для размеров шрифтов в Интернете, но на практике единица измерения в процентах обеспечивает более последовательный и доступный отображение для пользователей.

Исходная статья Кайла Шеффера: http:// kyleschaeffer.com/development/css-font-size-em-vs-px-vs-pt-vs/

5
Community 16 Июн 2020 в 13:51
Спасибо @Игорек! Это действительно полезно для определения размера базового шрифта, хотя это не связано с его использованием ems: «когда я создаю новый дизайн, я буду использовать проценты для элемента body (body { font-size: 62,5% ; }), а затем используйте единицу измерения em, чтобы изменить его размер." Мне интересно, почему он просто не использовал бы % для всего, поскольку ems в конечном итоге составляет % от базового шрифта.
 – 
Rath_Er
5 Ноя 2015 в 01:32
Я могу предположить, что нет особого смысла смешивать % и EM. Теперь, как я упоминал выше, EM и REM становятся новым стандартом и основаны на разнице между EM и REM - REM предлагает меньше головной боли и лучший контроль без необходимости беспокоиться о наследовании (вам действительно нужно беспокоиться о наследовании шрифтов с используя EM и %).
 – 
Igorek
5 Ноя 2015 в 07:40
3
Этой статье 7 лет, она древняя с точки зрения веб-дизайна. Важные современные соображения, такие как мобильный опыт, тогда едва существовали. Может быть, это все еще правда, но есть ли у вас более свежая информация?
 – 
user31143
5 Ноя 2015 в 09:31
@ dan1111, вопрос был в том, «в чем разница», что очень подробно описано в этой статье. Эта разница актуальна и по сей день. Если вас интересует вопрос «Что мне использовать?», есть более свежая статья 2014 года. можно найти на сайте CSS-Tricks.com, где рассказывается об использовании rem и em. Дайте мне знать, если это то, что вы искали.
 – 
Igorek
5 Ноя 2015 в 20:00
Мои вопросы были не столько общими «в чем разница», сколько фундаментальными преимуществами или недостатками того, чтобы основывать мои проекты на одном, а не на другом, поскольку оба они, похоже, касаются отношения к некоторому базовому стилю. Я действительно не был уверен, есть ли какая-то разница в поведении между ними (например, каскадирование происходит по-разному, ???), или они действительно в основном одинаковы, и я был бы одинаково обеспечен независимо от того, какой из них я использую.
 – 
Rath_Er
10 Ноя 2015 в 00:40

В поведении разницы нет. Приведенное выше отличие, на мой взгляд, просто глючная реализация браузера.

Я только что провел быстрый тест в текущих версиях Chrome и Firefox, и нет никакой разницы в размерах дочерних элементов: меньше; : больше, когда родитель равен 1em или 100%. Я был бы очень удивлен, если бы эта ошибка присутствовала в каких-либо современных браузерах; браузеры прошли долгий путь за семь лет.

Единственная разница, с практической точки зрения, это дополнительный символ, необходимый для использования %. Зачем использовать 4, когда можно использовать 3?

Кроме того, я считаю, что единственная разница заключается в историческом прецеденте. За установкой размера шрифта в em стоят сотни лет традиции.

2
Seth Warburton 6 Ноя 2015 в 11:10
Спасибо! Вот что я подозревал. Кажется забавным, что в области взаимодействия с пользователем используется измерение, незнакомое большому количеству людей, взаимодействующих с кодом, а не что-то стандартное и широко понимаемое, как %.
 – 
Rath_Er
6 Ноя 2015 в 19:46