Любой способ установить и эквивалентно CSS свойство "text-indent", но на основе шрифта?
По какой-то причине, которая ускользает от меня, значение "text-indent" равно числу пикселей. Но разные шрифты хотят разные уровни отступа. Я хотел бы избежать необходимости устанавливать правильный отступ при каждом изменении шрифта, что я мог бы сделать, если
text-indent: "mmm";
означает "добавить пиксели, эквивалентные этому тексту, в текущем шрифте". Тогда текстовый отступ будет одинаковым для каждого шрифта. Есть ли в CSS что-нибудь, что могло бы достичь такого эффекта?
1 ответ
Вы могли бы использовать em
вместо px
,
text-indent: 10em;
Единицы em и ex зависят от шрифта и могут отличаться для каждого элемента в документе. Это просто размер шрифта. В элементе со шрифтом 2in 1em означает 2in. Выражение размеров, таких как поля и отступы, в em означает, что они связаны с размером шрифта, и если у пользователя большой шрифт (например, на большом экране) или мелкий шрифт (например, на портативном устройстве), размеры будут пропорциональны. Такие объявления, как "text-indent: 1.5em" и "margin: 1em", чрезвычайно распространены в CSS.
Ссылка: w3.org