1
在發現Sass沒有指數能力之後,我決定創建自己的pow()函數。這是我不成功的嘗試:Sass中的求冪
@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
。
但後來大家誰願意用我的混入使用'POW()'將有猴子補丁薩斯... – silvenon 2012-03-03 21:25:05
因此,使它作爲寶石。 – Hauleth 2012-03-03 22:55:19
這是個好主意:) – silvenon 2012-03-04 11:56:13