混合器并不一定总得生成相同的样式。可以通过在@include
混合器时给混合器传参,来定制混合器生成的精确样式。当@include
混合器时,参数其实就是可以赋值给css
属性值的变量。如果你写过JavaScript
,这种方式跟JavaScript
的function
很像:
@mixin link-colors($normal, $hover, $visited) {
color: $normal;
&:hover { color: $hover; }
&:visited { color: $visited; }
}
当混合器被@include
时,你可以把它当作一个css
函数来传参。如果你像下边这样写:
a {
@include link-colors(blue, red, green);
}
//Sass最终生成的是:
a { color: blue; }
a:hover { color: red; }
a:visited { color: green; }
当你@include混合器时,有时候可能会很难区分每个参数是什么意思,参数之间是一个什么样的顺序。为了解决这个问题,sass
允许通过语法$name: value
的形式指定每个参数的值。这种形式的传参,参数顺序就不必再在乎了,只需要保证没有漏掉参数即可:
a {
@include link-colors(
$normal: blue,
$visited: green,
$hover: red
);
}
尽管给混合器加参数来实现定制很好,但是有时有些参数我们没有定制的需要,这时候也需要赋值一个变量就变成很痛苦的事情了。所以sass
允许混合器声明时给参数赋默认值。
在本章中,我们来研究Sass 注释。注释是放在源代码中的不可执行语句。注释使源代码更容易理解。Sass支持两种类型的注释。多行注...
描述 @import(reference)用于导入外部文件,但不会将导入的样式添加到编译的CSS文件中。 这是在版本1.5.0 中发布的。例子以下示...
描述svg-gradient是一种颜色到另一种颜色的转换。 它可以向同一元素添加许多颜色。 它包括至少三个参数:第一个参数标识渐变类型...
CSS链接HTML锚点链接可以使用CSS属性为其文本颜色,背景,字体等设置样式。以下代码将颜色样式添加到锚链接。a {color:red;}链接...
我们可以使用CSS伪类结合选择器来基于状态对元素进行样式化。例如:hover 将应用一个样式当用户将鼠标悬停在选择器指定的元素上时...