sass:math
- Dart Sass
- 1.23.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
現在、Dart Sassのみが@use
を使用した組み込みモジュールのロードをサポートしています。他の実装のユーザーは、グローバル名を使用して関数を呼び出す必要があります 。
変数変数のパーマリンク
math.$epsilon
- Dart Sass
- 1.55.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
浮動小数点比較によれば、1と1より大きい最小の64ビット浮動小数点数の差。Sass数値の10桁の精度のため、多くの場合、これは0のように見えます 。
math.$max-number
- Dart Sass
- 1.55.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
64ビット浮動小数点数として表現できる最大有限数です 。
SCSS構文
@use 'sass:math';
@debug math.$max-number; // 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Sass構文
@use 'sass:math'
@debug math.$max-number // 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
math.$max-safe-integer
- Dart Sass
- 1.55.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
64ビット浮動小数点数としてn
とn + 1
の両方を正確に表現できる最大の整数n
です 。
math.$min-number
- Dart Sass
- 1.55.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
64ビット浮動小数点数として表現できる最小の正の数。Sass数値の10桁の精度のため、多くの場合、これは0のように見えます 。
math.$min-safe-integer
- Dart Sass
- 1.55.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
64ビット浮動小数点数としてn
とn - 1
の両方を正確に表現できる最小の整数n
です 。
境界関数境界関数のパーマリンク
math.ceil($number)
ceil($number) //=> number
$number
を切り上げて、次の最も大きい整数にします 。
math.clamp($min, $number, $max) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
を$min
と$max
の間の範囲に制限します。$number
が$min
より小さい場合は$min
を返し、$max
より大きい場合は$max
を返します。
$min
、$number
、および$max
は、互換性のある単位を持つか、すべて単位なしである必要があります 。
SCSS構文
@use 'sass:math';
@debug math.clamp(-1, 0, 1); // 0
@debug math.clamp(1px, -1px, 10px); // 1px
@debug math.clamp(-1in, 1cm, 10mm); // 10mm
Sass構文
@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) //=> number
$number
を切り捨てて、次の最も小さい整数にします 。
math.max($number...)
max($number...) //=> number
1つ以上の数のうち最大のものを返します 。
math.min($number...)
min($number...) //=> number
1つ以上の数のうち最小のものを返します 。
math.round($number)
round($number) //=> number
$number
を最も近い整数に丸めます 。
距離関数距離関数のパーマリンク
math.abs($number)
abs($number) //=> number
$number
の絶対値を返します。$number
が負の場合、-$number
を返し、$number
が正の場合は、$number
をそのまま返します。
math.hypot($number...) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
各$number
に等しい成分を持つn次元ベクトルの長さを返します。たとえば、3つの数値a、b、およびcの場合、これはa² + b² + c²の平方根を返します。
数値はすべて互換性のある単位を持つか、すべて単位なしである必要があります。また、数値の単位が異なる場合があるため、出力は最初の数値の単位を取ります 。
指数関数指数関数のパーマリンク
math.log($number, $base: null) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
の対数を$base
に関して返します。$base
がnull
の場合、自然対数が計算されます 。
$number
と$base
は単位なしである必要があります 。
math.pow($base, $exponent) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$base
を$exponent
のべき乗に上げます。
$base
と$exponent
は単位なしである必要があります 。
math.sqrt($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
の平方根を返します。
$number
は単位なしである必要があります 。
三角関数三角関数のパーマリンク
math.cos($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のコサインを返します。
$number
は角度(単位はdeg
と互換性がある必要があります)または単位なしである必要があります。$number
に単位がない場合、rad
であると見なされます。
math.sin($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のサインを返します。
$number
は角度(単位はdeg
と互換性がある必要があります)または単位なしである必要があります。$number
に単位がない場合、rad
であると見なされます。
math.tan($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のタンジェントを返します。
$number
は角度(単位はdeg
と互換性がある必要があります)または単位なしである必要があります。$number
に単位がない場合、rad
であると見なされます。
math.acos($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のアークコサインをdeg
で返します。
$number
は単位なしである必要があります 。
math.asin($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のアークサインをdeg
で返します。
$number
は単位なしである必要があります 。
math.atan($number) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number
のアークタンジェントをdeg
で返します。
$number
は単位なしである必要があります 。
math.atan2($y, $x) //=> number
- Dart Sass
- 1.25.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$y
と$x
の2引数アークタンジェントをdeg
で返します。
$y
と$x
は、互換性のある単位を持つか、単位なしである必要があります 。
💡 豆知識
math.atan2($y, $x)
は、問題の点の象限を保持するため、atan(math.div($y, $x))
とは異なります。たとえば、math.atan2(1, -1)
は点(-1, 1)
に対応し、135deg
を返します。対照的に、math.atan(math.div(1, -1))
とmath.atan(math.div(-1, 1))
は最初にatan(-1)
に解決されるため、両方とも-45deg
を返します。
単位関数単位関数のパーマリンク
math.compatible($number1, $number2)
comparable($number1, $number2) //=> boolean
$number1
と$number2
に互換性のある 単位があるかどうかを返します。
これがtrue
を返す場合、$number1
と$number2
は安全に加算、減算、および比較できます。それ以外の場合、そうするとエラーが発生します 。
⚠️ 注意!
この関数のグローバル名はcomparable
ですが、sass:math
モジュールに追加されたとき、名前は、関数が何をするかをより明確に伝えるためにcompatible
に変更されました 。
SCSS構文
@use 'sass:math';
@debug math.compatible(2px, 1px); // true
@debug math.compatible(100px, 3em); // false
@debug math.compatible(10cm, 3mm); // true
Sass構文
@use 'sass:math'
@debug math.compatible(2px, 1px) // true
@debug math.compatible(100px, 3em) // false
@debug math.compatible(10cm, 3mm) // true
math.is-unitless($number)
unitless($number) //=> boolean
$number
に単位がないかどうかを返します 。
math.unit($number)
unit($number) //=> quoted string
$number
の単位の文字列表現を返します。
⚠️ 注意!
この関数はデバッグ用です。その出力形式は、Sassのバージョンや実装間で一貫しているとは限りません 。
SCSS構文
@use 'sass:math';
@debug math.unit(100); // ""
@debug math.unit(100px); // "px"
@debug math.unit(5px * 10px); // "px*px"
@debug math.unit(math.div(5px, 1s)); // "px/s"
Sass構文
@use 'sass:math'
@debug math.unit(100) // ""
@debug math.unit(100px) // "px"
@debug math.unit(5px * 10px) // "px*px"
@debug math.unit(math.div(5px, 1s)) // "px/s"
その他の関数その他の関数のパーマリンク
math.div($number1, $number2) //=> number
- Dart Sass
- 1.33.0以降
- LibSass
- ✗
- Ruby Sass
- ✗
$number1
を$number2
で除算した結果を返します。
両方の数値で共有されている単位はキャンセルされます。$number1
にあり、$number2
にない単位は戻り値の分子になり、$number2
にあり、$number1
にない単位は分母になります 。
⚠️ 注意!
下位互換性のために、これは非推奨の/
演算子とまったく同じ結果を返します。これには、2つの文字列を/
文字で連結することも含まれます。ただし、この動作は最終的に削除されるため、新しいスタイルシートで使用しないでください 。
SCSS構文
@use 'sass:math';
@debug math.div(1, 2); // 0.5
@debug math.div(100px, 5px); // 20
@debug math.div(100px, 5); // 20px
@debug math.div(100px, 5s); // 20px/s
Sass構文
@use 'sass:math'
@debug math.div(1, 2) // 0.5
@debug math.div(100px, 5px) // 20
@debug math.div(100px, 5) // 20px
@debug math.div(100px, 5s) // 20px/s
math.percentage($number)
percentage($number) //=> number
単位なしの$number
(通常は0から1の間の10進数)を パーセンテージに変換します。
💡 豆知識
この関数は$number * 100%
と同じです。
math.random($limit: null)
random($limit: null) //=> number
$limit
がnull
の場合、0から1の間のランダムな10進数を返します 。
SCSS構文
@use 'sass:math';
@debug math.random(); // 0.2821251858
@debug math.random(); // 0.6221325814
Sass構文
@use 'sass:math'
@debug math.random() // 0.2821251858
@debug math.random() // 0.6221325814
$limit
が1以上の数値の場合、1から$limit
までのランダムな整数を返します。
⚠️ 注意!
random()
は$limit
の単位を無視します。この動作は非推奨であり、random($limit)
は$limit
引数と同じ単位のランダムな整数を返します。