[关闭]
@FarmerZ 2017-11-23T02:49:38.000000Z 字数 660 阅读 653

mixin

stylus css stylesheet

mixin和函数的声明方法是一样的,但是使用的时候存在区别。

函数调用需要使用表达式即——funcName(params)
eg

  1. border-radius(n)

mixin调用的时候可以直接用做语句调用—— mixinName value value ...

  1. 可以直接对原生的样式进行操作
  2. 对于这种便利性的延伸我们可以方便地调用mixin用来添加厂商前缀。

mixin/函数中使用关键字arguments的区别

函数中

如果其中待用/或者+之类的数学计算符号会进行计算

mixin中

除非是添加()括号非则会直接调用

mixin中可以进行父级引用

使用&符号

添加block

在使用mixin时加上+前缀即可传递blocks
eg

  1. foo(){
  2. .bar
  3. {block}
  4. }
  5. +foo(){
  6. color:red
  7. }

在mixin中组合调用其他的mixin

我们可以在其他的mixin中调用和组合其他的mixin
eg

stylus

  1. inline-list()
  2. li
  3. display inline
  4. comma-list()
  5. inline-list()
  6. li
  7. &:after
  8. content ', '
  9. &:last-child:after
  10. content ''
  11. ul
  12. comma-list()

编译成
css

  1. ul li:after {
  2. content: ", ";
  3. }
  4. ul li:last-child:after {
  5. content: "";
  6. }
  7. ul li {
  8. display: inline;
  9. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注