第4章 高度な機能を覚えてSassを使いこなそう
4-5 自作関数を定義する @function
オリジナル関数の例
@function halfSize($value) {
@return $value / 2;
}
.boxA {
width: halfSize(100px);
}
.boxA {
width: 50px;
}
ネイティブ関数と組み合わせる
@function halfSize($value) {
@return round($value / 2);
}
.boxA {
width: halfSize(105px);
}
.boxA {
width: 53px;
}
値を変数に入れる
$width:105px;
@function halfSize() {
@return round($width / 2);
}
.boxA {
width: halfSize();
}
初期値の設定
$width:105px;
@function halfSize($value:$width) {
@return round($value / 2);
}
.boxA {
width: halfSize();
}
.boxB {
width: halfSize(200px);
}
.boxA {
width: 53px;
}
.boxB {
width: 100px;
}
グリッドレイアウトの幅を自動計算する関数
//全体の幅
$width: 960;
@function s-column($column) {
@return round($width / $column)+px;
}
.boxA {
width: s-column(4);
}
.boxA {
width: 240px;
}
//全体の幅
$width: 960;
//デフォルトのカラム数
$column: 4;
@function s-column($value:$column) {
@return round($width / $value)+px;
}
.boxA {
width: s-column();
}
.boxB {
width: s-column(6);
}
.boxA {
width: 240px;
}
.boxB {
width: 160px;
}


