less中的语法详解,主要是介绍一些平时常用的语法,如果有更多更实用的语法欢迎大家和我交流。
一、变量。
变量是识别符号是@,在less中以@开头的则是变量,关于变量名的命名方法,大家可以参考js中命名的规则,毕竟是做前端的,有着统一的习惯有助于我们统一风格。个人推荐变量名的命名规则使用驼峰命名法。第一个单词首写字母小写,从第二个开始,单词首写字母大写。如boxAaa,boxBbbb,boxContainer,……,当然也是可是使用香肠命名法用下划线“_”来命名。如,box_main,border_bottom,……。
二、混合。
这个模式比较常见,例如:规定的主背景色,主文字颜色等,可以事先定义好相关的颜色。在使用的时候直接调用,例如。
.border_radius(@radius:5px){ border-radius: @radius; -webkit-border-radius:@radius; } .box_02{ margin-left: 50%; width: 200px; height:60px; .border_radius(); background:#ccc; }
这样方便与后期维护。
三、匹配模式
匹配模式有助于我们更好的节省代码和唤起记忆。
例:
.triangle(top,@w:5px,@c:#ccc){ .sanjiao_001(); border-width: @w; border-color: transparent transparent @c transparent; border-style: dashed dashed solid dashed; } .triangle(bottom,@w:5px,@c:#ccc){ .sanjiao_001(); border-width:@w; border-color: @c transparent transparent transparent; border-style: solid dashed dashed dashed; }
调用的时候可以直接使用:
.sanjiao{ .triangle(bottom); }
四、运算
在less中的运算是默认使用有单位的一方为基础单位运算,
@w= 100px;
.bar_002{ width:@w - 30; height:20px; margin:0 auto; background:#cdecde; }
此时采用的计算单位就是px为其默认的计算单位。
在less中有一点和CSS3中不一样的地方就是采用百分比的单位不能和其他单位混合使用,例:
.bar_002{ width:100% - 30px; height:20px; margin:0 auto; background:#cdecde; }
在上面的计算中编辑的时候就会报错,不能这样使用,推荐使用的方法是采用css原生的使用方法来使用。
.bar_002{ width:~“calc(100% - 30px)”; height:20px; margin:0 auto; background:#cdecde; }
使用“~”符号来告诉less引号里面的内容不需要编译。
五、嵌套规则
嵌套规则其实和css中的层级选择器一样,没有太多区别(层级最好控制在3层以内,这样有助于浏览器的识别)。
另外还有个符号不得不说的就是“&”,此符号与相对路径中使用的“../”具有相同的意义,是返回上一次的意思,这个对使用为元素:hover,:avtice等有着很好的选择效果。
六、@arguments变量
当我们给变量设置很多默认值,这个时候我们又不想修改,想直接应用,那么arguments无疑是便捷的方式,使用此参数,可以直接全部使用默认变量。
例:
.bar_004(@w: 100%,@xx: solid,@c: #ccc){ border:@arguments; }
七、使用important来提升优先级。
在我们使用important,不仅可以使用给变量也可以使用给一个类。用此来提升优先级来达到我们想要的效果。
新闻热点
疑难解答