use-fluid-font
Устанавливает равномерное масштабирование свойств шрифта (font-size и line-height) в указанных пределах в зависимости от ширины экрана.
Сокращённый вариант одновременного использования use-fluid-prop('font-size') и use-fluid-prop('line-height').
Рекомендуется использовать как миксин высшего порядка для задания проектных умолчаний с целью уменьшения шаблонного кода.
Параметры
| Имя | Тип | По умолчанию | Описание |
|---|---|---|---|
| $start * | list | — | Список, содержащий начальные значения ширины экрана и свойств шрифта. |
| $end * | list | — | Список, содержащий конечные значения ширины экрана и свойств шрифта. |
Свойства шрифта передаются в виде строки, содержащей значения font-size и line-height, разделённые слэшем (/), как и в стандартном свойстве font: 14px/1.6.
Также можно установить только значение font-size (14px) или только line-height (/1.6).
Пример использования
@use 'more-sass' as more;
.element {
@include more.use-fluid-font((320px, '14px/1.5'), (1280px, '20px/1.4'));
}
.element {
font-size: 14px;
line-height: 21px;
}
@media (min-width: 320px) {
.element {
font-size: calc(14px + 6 * (100vw - 320px) / 960);
line-height: calc(21px + 7 * (100vw - 320px) / 960);
}
}
@media (min-width: 1280px) {
.element {
font-size: 20px;
line-height: 28px;
}
}
Пример использования в качестве миксина высшего порядка
// setup.scss
@use 'more-sass' as more;
@mixin fluid-font($min, $max) {
@include more.use-fluid-font((320px, $min), (1280px, $max));
}
// Other files
.element {
@include fluid-font('14px/1.5', '20px/1.4');
}
.element {
font-size: 14px;
line-height: 21px;
}
@media (min-width: 320px) {
.element {
font-size: calc(14px + 6 * (100vw - 320px) / 960);
line-height: calc(21px + 7 * (100vw - 320px) / 960);
}
}
@media (min-width: 1280px) {
.element {
font-size: 20px;
line-height: 28px;
}
}