通常是指變數插值,或者變數替換。
插值幾乎可以在 Sass 樣式表中的任何地方使用。
例如:
// scss //
@mixin generate-sizes($class, $short, $middle, $long) {
.#{$class}-short { font-size: $short; }
.#{$class}-middle { font-size: $middle; }
.#{$class}-long { font-size: $long; }
}
@include generate-sizes("header-text", 10cm, 20cm, 30cm);
編|
譯| 設置屬性值的時候可以使用字符串插入。
後|
V
.header-text-short {
font-size: 10cm;
}
.header-text-middle {
font-size: 20cm;
}
.header-text-long {
font-size: 30cm;
}
# 但需特別注意插值語法並不是隨處可用
// scss //
%updated-Title {
margin-top: 10px;
background: #f09;
}
.selected-Title {
font-weight: heavy;
}
$flag: "Title";
.navigation {
@extend %updated-#{$flag};
@extend .selected-#{$flag};
}
編|
譯| 在 @extend 可以動態的插入 .class 和 %placeholder
後|
V
// css //
.navigation {
margin-top: 10px;
background: #f09;
}
.selected-Title, .navigation {
font-weight: heavy;
}
// scss //
@mixin updated-status {
margin-top: 20px;
background: #F00;
}
$flag: "status";
.navigation {
@include updated-#{$flag};
}
編|
譯| 在 @mixin 無法編譯成功。
後|
V
error style.scss (Line 7: Invalid CSS after "...nclude updated-": expected "}", was "#{$flag};")