Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Как? У меня есть два простых правила:
Задавай значения в em, если свойства масштабируются относительно font-size;
Во всех остальных случаях задавай значения в rem.
На самом деле, плохая затея устанавливать font-size для html в пикселях (px), так как тем самым мы переопределяем установки браузера пользователя.Зачем нам его менять? Точнее даже так:
Думал даже над font-size: 1px чтоб вообще можно было px на rem автоматически поменять, но нашёл какой-то кейс где 10 удобнее.одну причину я знаю. если в настройках браузера прописан минимальный размер шрифта, например 8px, то размер элементов будет просто гигантским. кстати, в теории минимальный размер шрифта можно задать больше 10px. :)
Это кажется что пиксели везде одинаковые, на самом деле нет. CSS имеет дело с виртуальным пикселем, которые потом уже конвертируется в физические пиксели устройства и сколько их будет зависит от дейвайса и его разработчиков.
Этим-то rem и хороши. Они отвязывают от девайса и заставляют думать в категориях здесь у меня шрифт 1.4 единицы, здесь отступ 2 единицы.
REM vs EM – Великий спор