Sass-function-directives
提供:Dev Guides
Sass-関数ディレクティブ
この章では、*機能指令*について学習します。 SASSでは、独自の関数を作成してスクリプトコンテキストで使用するか、任意の値で使用できます。 関数は、関数名とパラメーターを使用して呼び出されます。
例
次の例は、SCSSファイルでの関数ディレクティブの使用を示しています-
function_directive
<html>
<head>
<title>Nested Rules</title>
<link rel = "stylesheet" type = "text/css" href = "style.css"/>
<link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</head>
<body>
<div class = "container" id = "set_width">
<h2>Example for Function directives</h2>
<p>SASS stands for Syntactically Awesome Stylesheet. </p>
</div>
</body>
</html>
次に、ファイル_style.scss_を作成します。
style.scss
$first-width: 5px;
$second-width: 5px;
@function adjust_width($n) {
@return $n *$first-width + ($n - 1)* $second-width;
}
#set_width { padding-left: adjust_width(10); }
次のコマンドを使用して、SASSにファイルを監視し、SASSファイルが変更されるたびにCSSを更新するように指示することができます-
sass --watch C:\ruby\lib\sass\style.scss:style.css
次に、上記のコマンドを実行します。それは次のコードで自動的に_style.css_ファイルを作成します-
style.css
#set_width {
padding-left: 95px;
}
出力
上記のコードがどのように機能するかを確認するために次の手順を実行してみましょう-
- 上記のHTMLコードを function_directivel ファイルに保存します。 *このHTMLファイルをブラウザで開くと、次のように出力が表示されます。
出力では、左詰めが適用されていることがわかります。
mixinと同様に、関数もグローバルに定義された変数にアクセスでき、パラメーターを受け入れることができます。* @ return *を使用して、関数の戻り値を呼び出す必要があります。 キーワードパラメータを使用して、SASS定義の関数を呼び出すことができます。
以下に示すように、上記の関数を呼び出します。
#set_width { padding-left: adjust_width($n: 10); }
命名規則
名前の競合を避けるために、関数名に接頭辞を付けて、簡単に区別できるようにすることができます。 ミックスインと同様に、変数引数もユーザー定義関数でサポートされています。 関数と他のSASS識別子は、アンダースコア(_)とハイフン(-)を同じ意味で使用できます。
たとえば、関数が adjust_width として定義されている場合、 adjust-width として使用でき、その逆も同様です。