Я работаю над расширением Chrome, которое возвращает свойство размера шрифта любого элемента. Я загружаю данные ответа ajax в документ расширения и вычисляю их свойства. Сейчас происходит что-то странное, и я не могу выяснить причину.
У меня есть тег заголовка на веб-странице, которую я анализирую. На вкладке «Стиль» (проверить элемент) на веб-странице указано, что размер шрифта равен 2em, а вычисленное значение — 32 пикселя.
Теперь, когда я загружаю ту же страницу в своем расширении Chrome, вкладка «Стиль» (проверить элемент) в моем расширении говорит, что ее размер шрифта равен 2em, но показывает, что ее вычисленный стиль равен 24px. Чтобы уточнить, я прилагаю изображения стилей и вычисляемых стилей как веб-страницы, так и расширения Chrome.
Случай 1: стиль (веб-страница)
Вычисляемый стиль (веб-страница)
Случай 2: стиль (после загрузки в расширение Chrome)
Вычисляемый стиль (после загрузки в расширение Chrome)
Я просто хочу знать, почему это происходит? Те же стили (2em), но окно браузера показывает вычисленный размер как 32, а окно расширения (в том же браузере) показывает 24px.
em
— это относительная единица, основанная на (в данном случае) размере шрифта родительского элемента. Таким образом, простой и логичный вывод здесь заключается в том, что разные значения, которые вы получаете для того, что2em
на самом деле есть, заключаются в том, что размеры шрифта родительских элементов в обоих случаях различаются… Обратите внимание, как на первом снимке экрана для ваше расширение, в разделе «унаследовано от тела» написаноfont-size: 75%
вместоbody
, а 24 — это ровно 75% от 32. - person CBroe   schedule 18.01.2015