一.概述
1.less是一门css的预处理语言(可理解为增强版的css),利用less用更少的代码实现原有的功能
2.less的优缺点:
(1)优点:更简洁,功能多
(2)缺点:less语法与css类似,但是添加很多新特性,浏览器无法执行less代码,需要先转为css在执行
3.实现less转为css:需要插件easy-less
(1)创建.less文件编写less代码,会自动生成一个浏览器支持的css代码
(2)引入到其他文件要引入.css文件才会生效
二.less中的语法
1.注释:
(1)单行注释(//):
- 不会被解析到自动生成的.css文件中
(2)多行注释(/**/):
-
2.父子元素兄弟元素的定义
(1)在box1括号内定义的就是box1的子元素
(2)如图:box2和box3是box1的子元素,box4是box2的子元素
自动转为css文件如下:
3.变量:可以在变量中存储任意的值
(1)语法:@变量名:变量值;
(2)使用也要有@ @a=100px;
- .box1{ width:@a }
(3)作为类名或一个值的一部分时要加括号:@(变量名)
- @b=box2;
-
4.就近原则:变量重名优先选择离得近的
5.使用上面定义好的属性:$属性名
6.&指代外层的父元素
7.扩展(就是类似继承):用extend或直接引用
(1)继承的子类除了继承父类还可以额外设置自己的样式(推荐使用)
案例:
转换后:
(2)直接引用:直接把要引用的写入
- 案例
8.在选择器后+(),就不会参与转换,可用于引用,相当于把样式设置为变量
(1)属于混合函数
(2)案例:
转换后不显示带()的,不参与转换
三.混合函数
1.混合函数就是在选择器后加(),括号里定义变量,在调用时,就要带参数调用
2.混合函数的定义
(1)默认方式:括号内定义变量,其中属性值等于变量,一定要按顺序传入参数
转换后:
(2)若不按顺序,就要指明变量:变量值
- 不然会发生参数错乱,串位置
(3)还可以设置默认值,这样不传参也不会报错
- 在定义变量时指定默认值
四.补充
1.less中所有数值可以直接进行运算(+ - * /)
2.less中引入其他less文件:import”路径”,可以实现多个less的合并