混合就是一种或者一系列属性从一种规则集引入(混合)到另一种规则集的方法
1. 普通混合
一个普通的css样式
我们发现 h1,h2的样式中有很多重复的,而解决方式如下,将重复的放在一个类中:
定义一个.font_h类,在HTML文件对应的元素山添加class="font_h"属性
less可以不这么写,less写法如下:
将定义好的类混入css样式中,这样就不用在HTML的元素中写类了
编译后的css,和下面不带输出的混合做对比
2. 不带输出的混合
编译后的css文件,从中发现.font_h不见了
3. 带选择器的混合
编译之后的css文件
其中, .my-hover-mixin():hover == &:hover
4. 带参数的混合
编译后的css文件
5. 带参数并且有默认值
编译后的css文件
调用后如果 .border_have()不带参数,就用默认的参数;如果传递了参数,就用传入的参数。而上边带参数但没有默认值时,如果调用时不传入参数就会报错。
6. 带多个参数的混合
编译后的css文件
less文件(定义具有多个相同名称和参数数量的混合)
编译后的css文件
less文件
编译后的css文件
如果使用mixin的时候只带一个参数,比如.mixin(red),这个属性会导致所有的mixin都会强制使用这个明确的参数
7. 命名参数
编译后的css文件
8. @arguments变量
编译后的css文件
less文件
编译后的css文件
这里的solid是默认值,但也必须写上,否则会报错。
9. 匹配模式
编译后的css文件
注意:中间用逗号分割开
10. 得到混合中变量的返回值
编译后的css文件
css 是由 浏览器来解析的,不需要编译器的。如果是用来编辑的,的确用NotePad++,这个是语法高亮显示,免费的而且很好用。UltraEdit、EditPlus 也不错。如果想深入了解,还是需要在网上找些资料来看看,并多次实践一下,就很容易弄懂了。