第一部分:Less语言
与上一篇《vue2.0中使用sass》介绍的Sass语言一样,Less语言也是一种CSS的扩展语言,增加了变量、混合(minin)、函数等功能,让CSS更易维护、方便制作主题。
Less既可以在客户端(IE6+、Webkit、Firefox),也可以借助Node.js或Rhino在服务器端运行,其样式扩展名为.less。
Less完全兼容CSS语法,连新增的特性也是使用CSS语法。
在Less中,你可以这样写CSS:
@base: #f938ab; .box-shadow(@style, @c) when (iscolor(@c)) { box-shadow: @style @c; -webkit-box-shadow: @style @c; -moz-box-shadow: @style @c;
} .box-shadow(@style, @alpha: 50%) when (isnumber(@alpha)) { .box-shadow(@style, rgba(0, 0, 0, @alpha)); } .box { color: saturate(@base, 5%); border-color: lighten(@base, 30%); div { .box-shadow(0 0 5px, 30%) } }
在引入less.js
前先要把你的样式文件引入 :
<link rel="stylesheet/less" type="text/css" href="styles.less">
<script src="less.js" type="text/javascript"></script>
注意:
1、注意:引入时rel
属性值为 “stylesheet/less
”
2、你的less样式文件一定要在引入less.js前先引入。
另外,你也可以在Vue中使用Less,下面就来进行示范:
第二部分、VUE2.0中集成Less
Step1:在项目中安装Less
1 $ npm install less less-loader --save 2 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents): 3 npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}) 4
5 + less-loader@4.0.5
6 + less@2.7.3
7 added 115 packages, removed 1 package and updated 2 packages in 46.996s
Step2:配置Less解析器
在webpack.base.conf.js中,modules结节下的rules节点中添加Less的解析器,如下所示:
1 module: { 2 rules: [ 3 { 4 test: /\.scss$/, 5 loaders: ["style", "css", "sass","style-loader!css-loader!less-loader"] 6 },
Step3:尝试使用Less语法
以下是使用传统的CSS样式的页面:
样式如下:
<style> .body { color:red; padding-top:30px;
} </style>
我们修改样式为:
<style lang="less"> @body-color: blue; .pad{ padding-top:30px;
} .body { color:@body-color; .pad; } </style>
样式依然生效。
说明:这里只是最简单的Less导入,深入的如果有机会,再给大家分享。
参考文档
http://lesscss.cn/
http://less.bootcss.com/#
http://www.bootcss.com/p/lesscss/
https://www.cnblogs.com/lin-dong/p/6711224.html
https://www.zhihu.com/question/50135522