Less学习

为什么使用less

css已经有很多新的东西学习了,为什么要学习less的知识。Github上很多项目都已经在用,之前只是一知半解。less既然这么流行,那么肯定有css无法比拟的优势的。

经过几天的学习,发现less除了可以定义变量、嵌套、计算等使得重构开发效率提高以外,还可以将一些常用的属性组合定义一个函数,以便于开发时不用重复去书写。这正好体现着"Less is more"的原则。在写可复用动画函数的时候,用less来写css动画库很方便。工作中可以整理自己的一套,用的时候将参数修改一下,就是可以快速创造出所需的动画。

node中使用

  • 全局 npm install less -g

  • 项目文件夹 npm i less -save-dev

  • 版本查询 less -v 检查是否安装成功

  • 扩展 插件

例如,命令行中安装 npm install less-plugin-clean-css
在代码中使用 var pluginName = require("pluginName");的方式引入。

浏览器中引入方式

原生浏览器可以通过将以下代码加入网页的head部分,访问出效果。

<link rel="stylesheet/less" type="text/css" href="yourfile.less"> 
<script src="https://cdn.bootcss.com/less.js/2.7.2/less.min.js"></script>

Safari浏览器打开本地网页文件没有问题,但是Google Chrome 引入本地资源文件需要开启 "-allow-file-access-from-files" 命令行开关。

建议先在线试用或是本地app中编辑,这里提供一个在线编译器 http://less2css.org/

命令行编译

npm安装的less可以通过命令行的方式来编译less文件到css文件,例如运行'lessc your.less your.css'这样的代码。

更多的用法,输入 'lessc -h' 获取更多的帮助。

通过形如'@import “another.less”'的方式引入的文件,也会在编译的时候自动引入编译。

less核心功能

翻看 less 的官网 ,发现无从下手。其实,less的强大之处在它的函数,函数是最重要的功能,分为 Misc ,String,List,Math,Type,Color几类,其中Color类的函数最为常用,动画函数库主要是用这些函数来的实现的。

几个例子

csslab(原名Lesslab),从名字可以感觉出这里会有宝藏。来自芒果TV团队封装的CSS动画库,这些例子会让你有直观的印象,例子放在CodePen,你可以编译和修改,直接运行看到效果,所见及所得。

项目中使用

Less 是 css 预处理器,通过npm安装后,通过var less = require('less');的语句就可以在node中调用Less预编译器。现在的前端项目都工程化,npm上有很多第三方的包,通过Express的中间件 Connect Middleware for Less.js 将less加入项目,grunt-contrib-less 定时运行,gulp-less 减小打包后的体积。可用的选择很多,适合项目的才是最好的。

webpack

前端项目现在流行的打包工具是 webpack,它的 loader 可以打包 js 以外的文件。欲知详情,待看下一篇分解。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • less 是一种基于JavaScript的动态样式语言。它包含了一套自定义的语法以及一个编译器,我们可以根据语法定...
    谢小逸阅读 862评论 0 3
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,913评论 25 708
  • 本来预计昨天就可以完成这篇的,由于工作原因,拖到了现在。接下来的一个月应该会很忙,工作上有新的项目要开始做,尽可能...
    程恺阅读 3,087评论 0 2
  • 生活中往往有许多的小细节被我们渐渐的忽视,但是细节决定一个人的人品,语言表达决定一个人的素养问题。 前几天,我男朋...
    小趣多阅读 392评论 0 0
  • 收到小妹不小心被摩托车搅到脚的消息时,我正在学校饭堂吃午饭,突然间,找不到适当的表情。 那天我本来就请了假去检查身...
    西西yohui阅读 242评论 6 2