lesscss 是动态的样式表语言,他让css增加变量,组合,函数,运算等语法。这个项目的网站在国内访问不到,大家都懂的。

lesscss使用方法有两种:

  1. 页面添加一个 less.js的文件,css使用 style.less 文件后缀来编写,不过需要有服务器的环境支持
    <link rel="stylesheet/less" type="text/css" href="styles.less">
    <script src="less.js" type="text/javascript"></script> 
  2. 在服务器端使用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语法缩进支持不够友好。

声明: 转载请注明转自--强记使用lesscss来编码编写css

作者: 强记 发表于 2011-08-01 17:57 原文链接

推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架
新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"