Как вычисляется em?

Я заметил, что вы можете использовать 1em, и он будет выглядеть по-разному на разных сайтах.

Что такое em пропорционально?

  • Используемый шрифт?
  • Самый большой размер шрифта?
  • Ширина страницы/высота?

Ответ 1

См. http://w3schools.com/cssref/css_units.asp

1em равен текущему размеру шрифта. 2em означает в 2 раза больше текущий шрифт. Например, если элемент отображается с шрифтом 12 pt, то "2em" составляет 24 pt. "Em" - очень полезная единица в CSS, поскольку он может автоматически адаптироваться к шрифту, который использует читатель

EM относится к текущему элементу, на котором он определен. Если вы используете относительные размеры (например, 0.9em), они размножаются и могут привести к непредвиденным размерам.

Теперь размер шрифта по умолчанию - не стандарт между браузерами. И проблема с IE (по крайней мере, более старый IE) при установке шрифта на конкретный элемент пикселя. A хороший обзор размера шрифта можно найти в List Apart.

Ответ 2

В соответствии с W3C и em:

"равно вычисленному значению свойства font-size элемента, на котором он используется. Исключением является случай, когда 'em' встречается в значении самого свойства font-size, в котором case это относится к размеру шрифта родительского элемента."

Другими словами, ems не имеют абсолютного размера. Они берут свои значения размера в зависимости от того, где они находятся. Для большинства веб-дизайнеров это означает, что они находятся в веб-браузере, поэтому шрифт высотой 1 метр точно такой же, как размер шрифта по умолчанию для этого браузера.

Для большинства браузеров значение по умолчанию   1em = 16px