Мне трудно угадать, почему один элемент имеет разные размеры пикселей в зависимости от загруженного набора правил. Очевидно, у элемента всегда один и тот же размер шрифта 6em , который переводится в высоту 96 пикселей. Но после загрузки некоторых других правил тот же размер шрифта преобразуется в высоту 86 пикселей. Вот два снимка вычисленных стилей:

Размер шрифта при загрузке страницы Размер шрифта при загрузке страницы Размер шрифта при полной загрузке страницы Размер шрифта при полной загрузке страницы

Как я могу отследить правила, благодаря которым это происходит? С Уважением

0
Danielo515 7 Янв 2017 в 00:20
Просмотрите свой CSS и убедитесь, что ваше свойство font-size для этого элемента не переопределено. Также проверьте, не установили ли вы font-size для любого другого родительского элемента, поскольку это свойство наследуется
 – 
Wais Kamal
7 Янв 2017 в 00:26

1 ответ

Лучший ответ

EM - это не фиксированная единица измерения, это относительный размер. Происхождение «EM» - это буквально ширина буквы «M» определенного шрифта. В цифровой типографике EM относительно базового размера шрифта. Итак, то, что вы видите, является иллюстрацией «каскадной» природы CSS.

При первоначальной загрузке базовый шрифт устанавливается либо в процентах, либо в фиксированном размере (например, 12 пикселей, 14 пикселей, 100% и т. Д.). Затем, когда загружаются дополнительные стили, размер шрифта вашего #TP_splash_screen будет наследование от изменено на что-то меньшее, поэтому значение 6em теперь меньше.

Рассмотрим этот пример:

body{
    font-size: 12px;
}

#TP_splash_screen{
    font-size: 6em;
}

.container{
    font-size: 10px;
}

Если вы используете #TP_splash_screen как элемент, который является прямым потомком элемента body, тогда ваш шрифт будет 6em из 12 пикселей (в 6 раз больше размера 12 пикселей «M»). Если вы используете #TP_splash_screen как элемент, который является потомком элемента container, тогда ваш шрифт будет иметь размер 6em из 10 пикселей (в 6 раз больше размера 10 пикселей «M»).

EM - отличная единица измерения для работы с гибкими, адаптивными макетами, это не фиксированные единицы измерения.

0
Josh Miller 7 Янв 2017 в 00:33
Это полностью развеивает мои сомнения. Большое тебе спасибо. Вероятно, когда загружается полная страница, любое случайное правило css устанавливает размер шрифта тела на относительно небольшой размер в пикселях. Я могу сделать вывод, что теперь, когда я полностью понимаю, что размер em зависит от контейнера, а не от всего документа.
 – 
Danielo515
7 Янв 2017 в 00:55
Рад, что помог @ Danielo515!
 – 
Josh Miller
7 Янв 2017 в 01:26