CSS中常用预处理器有两种:Less和Sass。
今天接触的是Less预处理器,简单的了解了一下。
emmmmm,其实吧,今天主要是看了看Less的语法什么的,Less的语法跟CSS语法很像,及其的相似。Less是预处理,就是在浏览器解析代码之前,Less先执行,CSS是浏览器解析的。Less通过解析,生成CSS文件,应用在页面中。Less比CSS强大,有很多CSS没有的东西,比较灵活一点。
Less中的注释
使用:// 这里的注释是不会出现到CSS中 一般是开发者自己看
使用:/**/ 这里的注释可以出现到CSS中 给测试人员或者用户看
Less中的变量
变量的申明:@变量名
变量申明之后,再Less文件中可以使用变量
变量的存在,让Less代码就灵活了很多,可以很动态的使用,调用
Less中的变量:变量是延迟加载(模块加载完之后,再加载变量)、变量是块级作用域
Less中的嵌套
在Less中写代码,很像是在HTML中写代码,Less中的结构和html的结构很像,因为它可以嵌套。
嵌套分为两个等级:基本嵌套、&的使用
基本嵌套:父子关系(就正常的嵌套结构)
&的使用:平级(同级、也可以理解为兄弟关系)
Less中的混合
混合的概念:就是将一系列属性从一个规则集引入到另一个规则集的方式
Less中的混合本质上就是复制粘贴相同的代码。
Less中的混合:使用 . 命名
混合本质:复制、粘贴
普通混合:.name 解析后这部分代码会解析出现到CSS文件中
不带参数的混合:.name() 解析后这部分代码不会出现到CSS文件中
带参数的混合:.name(@attr1,@attr2......) @attr1,@attr2是形参,使用时直接传属性对应的属性值即可
带默认值的混合:.name(@attr1:val1,@attr2:val2......) 形参@attr1,@attr2的默认值为val1、val2,
当属性使用这个混合时,如果没有给该形参传值,就会使用默认值
命名参数:
匹配模式:.name(N,@num1,@num2.......) N代表标识符 ,@num1,@num2是变量 。
通过标识符自动匹配到合适的混合
当使用混合调用同名的混合时:会默认把(@_,@num1,@num2......)也使用掉
用“@import “文件名” ;”应用其他Less文件
Less中的计算
Less中计算就是可以实现计算的功能:加减乘除
比如可以——width:(10 + 10px)
其中,双方只需给其中一方带单位即可
Less中的继承
继承比混合性能高,但是灵活度比混合低
继承没有(),混合有。
举例:
.inner:extend(.juzhong):Less解析出来的CSS—> .juzhong,.inner
简单明了
Less继承本质:,(先解析继承、添加继承,再用“,”把自身加上)
Less中的避免编译
避免编译的意思就是说,原本浏览器可以做的事情,不让Less做,减少负担嘛。
就像计算,CSS中也可以进行计算,就不需要Less来做这些多余的功能了,这就是避免编译嘛。
怎么避免编译呢:在属性上加 ~“ ”; 即可。
@W:~“width:(10 + 10px)”;
这样只有文字不怎么好理解,明天我会把这些用相应的代码实现一下。这会主要是整理整理大概的内容,还有一点点木有回忆起来,笔记也没记全呢,明天再补充补充吧!!!
加油啦!!
冲鸭冲鸭冲鸭。。