Здравствуйте. Вот смотрите, есть у нас такая
горстка стилей, допустим:
html {
font-size: 62.5%; /* (100% * 10px / 16px = 62.5 | 1rem = 10px) */
}
body {
font-size: 1.6rem; /* 16px */
margin: 1.6rem; /* 16px */
}
Тогда почему нельзя использовать rem'ы аналогично пикселям (1rem = 1px)? Можно:
html {
font-size: 1px;
}
body {
font-size: 16rem; /* 16px */
margin: 16rem; /* 16px */
}
Давайте зададим размер шрифта в html в процентах, но немного иначе, все должно работать также, как и в предыдущем случае:
html {
font-size: 6.25%; /* (100% * 1px / 16px = 6.25 | 1rem = 1px) */
}
body {
font-size: 16rem; /* 16px */
margin: 16rem; /* 96px - WAT!? */
}
Должно... но почему это не так? В чем причина такой странной работы
rem
, как
единиц измерения?
1rem = 1px, но только для размеров шрифта, для
margin же
1rem = 6px... В чем причина такого
парадокса?
P.S. Все приравнивания
rem
к
px
крайне приблизительны. Не нужно указывать на
эти утверждения, как на
ошибку.
P.P.S. Данная проблема только в Chrome, в Firefox все работает, как надо...
Проблема решена! Ответил в комментариях.