lesscss 是动态的样式表语言,他让css增加变量,组合,函数,运算等语法。这个项目的网站在国内访问不到,大家都懂的。这里只给出地址:http://www.lesscss.org/
lesscss使用方法有两种:
◆ 页面添加一个 less.js的文件,css使用 style.less 文件后缀来编写,不过需要有服务器的环境支持
- <link rel="stylesheet/less" type="text/css" href="styles.less">
- <script src="less.js" type="text/javascript"></script>
◆ 在服务器端使用node.js来编译,node.js 使用 less的方法如下:
先使用npm包管理器来安装
$ npm install less
然后就可以使用命令行来编译压缩less代码了
$ lessc styles.less > styles.css
下面是一些lesscss的语法:
使用变量
- // LESS
- @color: #4D926F;
- #header {
- color: @color;
- }
- h2 {
- color: @color;
- }
- /* Compiled CSS */
- #header {
- color: #4D926F;
- }
- h2 {
- color: #4D926F;
- }
2.组合
- // LESS
- .rounded-corners (@radius: 5px) {
- border-radius: @radius;
- -webkit-border-radius: @radius;
- -moz-border-radius: @radius;
- }
- #header {
- .rounded-corners;
- }
- #footer {
- .rounded-corners(10px);
- }
- /* Compiled CSS */
- #header {
- border-radius: 5px;
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- }
- #footer {
- border-radius: 10px;
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- }
3.选择器
- // LESS
- #header {
- h1 {
- font-size: 26px;
- font-weight: bold;
- }
- p { font-size: 12px;
- a { text-decoration: none;
- &:hover { border-width: 1px }
- }
- }
- }
- /* Compiled CSS */
- #header h1 {
- font-size: 26px;
- font-weight: bold;
- }
- #header p {
- font-size: 12px;
- }
- #header p a {
- text-decoration: none;
- }
- #header p a:hover {
- border-width: 1px;
- }
4. 变量预算
- // LESS
- @the-border: 1px;
- @base-color: #111;
- @red: #842210;
- #header {
- color: @base-color * 3;
- border-left: @the-border;
- border-right: @the-border * 2;
- }
- #footer {
- color: @base-color + #003300;
- border-color: desaturate(@red, 10%);
- }
- /* Compiled CSS */
- #header {
- color: #333;
- border-left: 1px;
- border-right: 2px;
- }
- #footer {
- color: #114411;
- border-color: #7d2717;
- }
5. import 外部css
- @import "lib.less";
- @import "lib";
通用引用了lesscss,我们就可以将css写得模块化,有更好的阅读性。
首先可以通过 import 讲网站的样式分成 n个模块,当页面需要哪个模块就引用哪个。还可以将css3那些新增的功能定义成类库,由于有函数的功能,那些圆角,阴影之类样式只需要定义一次就可以了。讲页面需要使用到的主要文本,边框,背景色定义成变量给后续样式使用,到时网站风格需要改变,颜色也很好的修改。
我个人觉得先阶段lesscss的不足有:
1. css3的样式不能自动补全其他浏览器的hack。
2.使用nodejs在window系统下的支持不够,不过最近刚刚不久发布了一个nodejs window版,这方面估计在不久的将来会改善
3.编辑器,ide对lesscss语法缩进支持不够友好。
原文:http://www.cnblogs.com/qiangji/archive/2011/08/01/lesscss.html
【编辑推荐】