一、混合定义函数及混合函数的传参
less定义多个具有相同名称和参数数量的混合是合法的。带多个参数的混合,参数用分号分割,逗号会作为列表传递,即如果传参的括号里面全部都是以逗号分割,那么会依次传给各个参数值,如果传参的括号里面既有逗号也有分号,则会把分号前面的看做一个整体传给一个参数值。例如
1 | .mixin(@color;) { |
上述编译后结果:
1 | .some .selector div { |
二、less函数命名参数
less的函数支持命名参数的形式传参,例如
1 | //命名参数 |
编译的结果为:
1 | .class1 { |
三、函数的匹配模式级函数变量返回值
定义多个相同名称的函数,通过匹配调用不同函数,函数变量返回值即在函数中将计算的结果赋值给变量。例如
1 | // 匹配模式 |
编译后css如下
1 | footer { |
四、arguments变量代表所有可变参数
通过arguments替代所有函数参数,例如
1 | //arguments变量,代表所有可变参数 |
编译后css样式如下
1 | .div1 { |
五、less的嵌套及&的符号
less可以通过嵌套的方式减少代码冗余,使用&可以表示父级元素。例如
1 | // 父元素选择器&符号 |
编译后的css样式
1 | header { |
结合html效果如下
1 | <!DOCTYPE html> |