Функция разделительного блока онлайн урок.


Существует много путаницы вокруг того, как подразделения работают в Сассе. Тем не менее, они работают точно так же, как в реальной жизни. Если вы хотите удалить единицу измерения, вам необходимо разделить ее на 1 единицу. Например, чтобы удалитьсмединицу42 см, вы должны разделить его на1 см. Он работает точно так же в Сассе.

$length: 42px;
$value: $length / 1px;
// -> 42

Но что, если вы не знаете, какая единица используется? Скажем, это может быть что угодно: от пикселей доemили дажеvwиch. Тогда нам нужно абстрагировать логику в функции:

/// Remove the unit of a length
/// @param {Number} $number - Number to remove unit from
/// @return {Number} - Unitless number
@function strip-unit($number) {
@if type-of($number) == 'number' and not unitless($number) {
@return $number / ($number * 0 + 1);
}

@return $number;
}

Расчет может показаться странным, но это имеет смысл. Чтобы иметь1единицы$ number, мы можем умножить$ numberна0, а затем добавить1.

# Применение

$length: 42px;
$value: strip-unit($length);
// -> 42