Обнаружив, что у Sass нет экспоненциальных способностей, я решил создать свою собственную функцию pow ().Это моя неудачная попытка:
@function pow($x,$p) {
$u: unit($x);
$x: $x / 1#{$u};
$p: round($p);
@if $p == 0 {
@return 0;
} @else if $p == 1 {
@return $x;
} @else {
@for $i from 1 through abs($p) {
$x: $x * $x;
}
}
@if $p < 0 {
$x: 1 / $x;
}
@return $x + $u;
}
Часть, с которой я застрял, снимает юниты.Я знаю, что 12px / 1px = 12
, но в моем случае единица неизвестна, и 12px / 1#{unit(12px)}
не работает, потому что это равно "12px/1px"
(да, с кавычками).Функция unquote
, похоже, не работает для меня, я не знаю почему.
Если вам интересно, почему я хочу разделить юниты (и вернуть их в конце)потому что 12px * 12px = 144px*px
.