【Sass】数値から単位を除去する方法

Sassを使用する際、数値から単位を取り除いて純粋な数値だけを扱いたい場面があるかもしれません。この記事では、Sassのunitless関数を使用してその方法を説明します。

なぜ数値から単位を除去するのか?

Web開発において、単位付きの数値を扱うことが一般的です。しかし、計算や比較を行う際には、単位を取り除いて純粋な数値だけを扱いたい場合があります。例えば、レスポンシブデザインのための計算や、特定の条件に基づいてスタイルを変更する際に便利です。

unitless関数の使用例

$number-with-unit: 10px;

$number-without-unit: unitless($number-with-unit);

.foo {
  width: $number-without-unit * 2; // 20
}

この例では、$number-with-unitには10pxという値が含まれています。unitless関数を使って、この数値から単位(この場合はpx)を取り除き、純粋な数値である10を$number-without-unitに代入します。その後、純粋な数値を使用して計算が行われます。

実際のプロジェクトでの活用方法

実際のプロジェクトで、数値から単位を除去するケースは多岐にわたります。例えば、次のような場面で活用できます。

  • レスポンシブデザインのための動的な計算
  • カスタム関数やミックスインでの数値操作
  • 比較演算子を使用した条件分岐

以下は、レスポンシブデザインにおける例です。

$base-font-size: 16px;

@mixin responsive-font-size($factor) {
  font-size: unitless($base-font-size) * $factor + px;
}

body {
  @include responsive-font-size(1.5); // 24px
}

まとめ

Sassのunitless関数を使用することで、数値から単位を簡単に取り除き、純粋な数値として扱うことができます。これにより、より柔軟で効率的なスタイルの管理が可能になります。ぜひ、日々のプロジェクトで活用してみてください。