Compatibility:
Only Dart Sass currently supports loading built-in modules with @use
. Users of other implementations must call functions using their global names instead.
math.$e
Compatibility:
The closest 64-bit floating point approximation of the mathematical constant e.
math.$epsilon
Compatibility:
The difference between 1 and the smallest 64-bit floating point number greater than 1 according to floating-point comparisons. Because of Sass numbers’ 10 digits of precision, in many cases this will appear to be 0.
math.$max-number
Compatibility:
The maximum finite number that can be represented as a 64-bit floating point number.
math.$max-safe-integer
Compatibility:
The maximum integer n
such that both n
and n + 1
can be precisely represented as a 64-bit floating-point number.
math.$min-number
Compatibility:
The smallest positive number that can be represented as a 64-bit floating point number. Because of Sass numbers’ 10 digits of precision, in many cases this will appear to be 0.
math.$min-safe-integer
Compatibility:
The minimum integer n
such that both n
and n - 1
can be precisely represented as a 64-bit floating-point number.
math.$pi
Compatibility:
The closest 64-bit floating point approximation of the mathematical constant π.
Bounding FunctionsBounding Functions permalinkmath.ceil($number)
ceil($number)
Rounds $number
up to the next highest whole number.
math.clamp($min, $number, $max)
Compatibility:
Restricts $number
to the range between $min
and $max
. If $number
is less than $min
this returns $min
, and if it’s greater than $max
this returns $max
.
$min
, $number
, and $max
must have compatible units, or all be unitless.
@use 'sass:math';
@debug math.clamp(-1, 0, 1);
@debug math.clamp(1px, -1px, 10px);
@debug math.clamp(-1in, 1cm, 10mm);
Playground Sass Syntax
@use 'sass:math'
@debug math.clamp(-1, 0, 1) // 0
@debug math.clamp(1px, -1px, 10px) // 1px
@debug math.clamp(-1in, 1cm, 10mm) // 10mm
math.floor($number)
floor($number)
Rounds $number
down to the next lowest whole number.
math.max($number...)
max($number...)
Returns the highest of one or more numbers.
math.min($number...)
min($number...)
Returns the lowest of one or more numbers.
math.round($number)
round($number)
Rounds $number
to the nearest whole number.
math.abs($number)
abs($number)
Returns the absolute value of $number
. If $number
is negative, this returns -$number
, and if $number
is positive, it returns $number
as-is.
math.hypot($number...)
Compatibility:
Returns the length of the n-dimensional vector that has components equal to each $number
. For example, for three numbers a, b, and c, this returns the square root of a² + b² + c².
The numbers must either all have compatible units, or all be unitless. And since the numbers’ units may differ, the output takes the unit of the first number.
Exponential FunctionsExponential Functions permalinkmath.log($number, $base: null)
Compatibility:
Returns the logarithm of $number
with respect to $base
. If $base
is null
, the natural log is calculated.
$number
and $base
must be unitless.
math.pow($base, $exponent)
Compatibility:
Raises $base
to the power of $exponent
.
$base
and $exponent
must be unitless.
math.sqrt($number)
Compatibility:
Returns the square root of $number
.
$number
must be unitless.
math.cos($number)
Compatibility:
Returns the cosine of $number
.
$number
must be an angle (its units must be compatible with deg
) or unitless. If $number
has no units, it is assumed to be in rad
.
math.sin($number)
Compatibility:
Returns the sine of $number
.
$number
must be an angle (its units must be compatible with deg
) or unitless. If $number
has no units, it is assumed to be in rad
.
math.tan($number)
Compatibility:
Returns the tangent of $number
.
$number
must be an angle (its units must be compatible with deg
) or unitless. If $number
has no units, it is assumed to be in rad
.
math.acos($number)
Compatibility:
Returns the arccosine of $number
in deg
.
$number
must be unitless.
math.asin($number)
Compatibility:
Returns the arcsine of $number
in deg
.
$number
must be unitless.
math.atan($number)
Compatibility:
Returns the arctangent of $number
in deg
.
$number
must be unitless.
math.atan2($y, $x)
Compatibility:
Returns the 2-argument arctangent of $y
and $x
in deg
.
$y
and $x
must have compatible units or be unitless.
math.atan2($y, $x)
is distinct from atan(math.div($y, $x))
because it preserves the quadrant of the point in question. For example, math.atan2(1, -1)
corresponds to the point (-1, 1)
and returns 135deg
. In contrast, math.atan(math.div(1, -1))
and math.atan(math.div(-1, 1))
resolve first to atan(-1)
, so both return -45deg
.
math.compatible($number1, $number2)
comparable($number1, $number2)
Returns whether $number1
and $number2
have compatible units.
If this returns true
, $number1
and $number2
can safely be added, subtracted, and compared. Otherwise, doing so will produce errors.
The global name of this function is comparable
, but when it was added to the sass:math
module the name was changed to compatible
to more clearly convey what the function does.
math.is-unitless($number)
unitless($number)
Returns whether $number
has no units.
math.unit($number)
unit($number)
Returns a string representation of $number
’s units.
This function is intended for debugging; its output format is not guaranteed to be consistent across Sass versions or implementations.
Other FunctionsOther Functions permalinkmath.div($number1, $number2)
Compatibility:
Returns the result of dividing $number1
by $number2
.
Any units shared by both numbers will be canceled out. Units in $number1
that aren’t in $number2
will end up in the return value’s numerator, and units in $number2
that aren’t in $number1
will end up in its denominator.
For backwards-compatibility purposes, this returns the exact same result as the deprecated /
operator, including concatenating two strings with a /
character between them. However, this behavior will be removed eventually and shouldn’t be used in new stylesheets.
math.percentage($number)
percentage($number)
Converts a unitless $number
(usually a decimal between 0 and 1) to a percentage.
This function is identical to $number * 100%
.
math.random($limit: null)
random($limit: null)
If $limit
is null
, returns a random decimal number between 0 and 1.
If $limit
is a number greater than or equal to 1, returns a random whole number between 1 and $limit
.
random()
ignores units in $limit
. This behavior is deprecated and random($limit)
will return a random integer with the same units as the $limit
argument.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4