【Amazon】人気の商品が日替わりで登場!
毎日お得なタイムセール!商品をみる

SCSSの関数(@function)の使い方・使いどころ

本記事では、SCSSの関数(@function)の使い方について解説しています。実際に関数をしようしたサンプルコードも用意しているので、使いどころについても理解できると思います。

HTML/CSSの学習におすすめ書籍
1冊ですべて身につくHTML&CSSとWebデザイン入門講座
総合評価
( 5 )
メリット
  • HTMLとCSSの基本が体系的に学べる
  • Webデザインの基本が学べる
  • 1つのWebサイトを作りながら学べる
楽天ブックス
¥2,486 (2024/10/07 13:25時点 | 楽天市場調べ)
先輩くん

Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!

後輩ちゃん

初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

全プログラマー必見!
変数名/関数名にもう悩まない!
リーダブルコード
総合評価
( 5 )
メリット
  • 美しいコードが書けるが自然と書けるようになる
  • 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次

関数(@function)の使い方

SCSSで関数を使用したい場合は、@function/@returnを使用します。基本的な使い方は以下のとおりです。

// 関数を定義
@function fn($argument) {
  @return // 値を返す
}

// 関数を呼び出す
.example{
  color: fn(#f00);
}
構文解説
  • fn:任意の関数名を指定
  • $argument:引数の名前を指定(引数は複数設定することも可能)
  • @return:渡された引数などを使用して計算結果を返す

JavaScriptなどのプログラミング言語では、関数に必ずreturnを記述する必要はありませんがSCSSでは必ず@returnを記述する必要があります。

実際に、@function/@returnを使用したサンプルコードを用意したので動作確認してみましょう。関数は主に引数で渡された値を計算(加工)し返したい時に使用されるので、今回のサンプルコードの内容は引数にpxの値を指定することで、自動でvwの値を計算し返す関数を作成します。

例(デザインカンプの横幅)
  • PC:1366px
  • SP:750px
@function pcvw($px, $standardWidth: 1366) {
  @return ($px / $standardWidth) * 100vw;
}

@function spvw($px, $standardWidth: 750) {
  @return ($px / $standardWidth) * 100vw;
}

.sample {
  font-size: pcvw(30);
}

@media screen and(max-width:768px) {
  .sample {
    font-size: spvw(20);
  }
}
.sample {
  font-size: 2.19619vw;
}

@media screen and (max-width: 768px) {
  .sample {
    font-size: 2.66667vw;
  }
}

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村 FC2 Blog Ranking

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次