CSS预处理语言-less 的使用

Less 是一门 CSS 预处理语言,它扩展了 CSS 语言,增加了变量、Mixin、函数等特性,使 CSS 更易维护和扩展。

Less 可以运行在 Node 或浏览器端。

Less的编译处理

作为一门CSS预处理语言,它并不像CSS一样能直接使用,而是需要编译后使用,如何编译呢,下面分node 和浏览器端两种情况解释。

浏览器端:

浏览器端使用less,只需要做如下两步:

1.引如Less

使用link标签引入less,需要注意的是 rel="stylesheet/less"

<link rel="stylesheet/less" type="text/css" href="styles.less" />

2.引入less解析用的js文件

<script src="less.js" type="text/javascript"></script>

3.声明解析,要在引入 less.js前进行声明。

<script>

   less = {

    env: "development",

    async: false,

    fileAsync: false,

    poll: 1000, functions: {},

    dumpLineNumbers: "comments",

    relativeUrls: false, rootpath: ":/a.com/"

  };

</script>

完事,就这么简单,但是 由于编译解析less需要消耗一定的性能,且渲染也会有延迟,所有推荐使用node或其他第三方工具进行编译后使用。

需要注意的是 js文件必须要在less文件后引入。

less.js 下载地址在这里

node端

1. 使用npm安装less

$ npm install -g less

2.编译输出

使用命令行调用less编译器进行编译

$ lessc styles.less

这会输出到stdout编写CSS。将CSS结果保存到所选择使用的文件中

$ lessc styles.less styles.css

输出后你可以使用编译的style.css 啦。

less的使用方法

1.注释

   less 的注释分为两种:  /*  注释内容 */  和  //  注释内容   。

/* */  为块注释  可以注释一行或多行,

//    为行注释,只能注释一行,而且这种注释在编译处理时会被编译掉。

2.变量

  less中很方便的一个功能就是定义变量,当css多处用到同一个值的时候,如果不用变量,那么改动它需要改动100处,而使用变量的话,只需要修改变量的值便可以全局修改了,是不是很方便呢。

和PHP类似 变量都是以@开头,无论是定义还是使用,使用如下  :

// 定义变量
@cell_width:100px;

//在使用的时候就可以这样使用

.cell{  width:@cell_width;
}

3.混合

和css差别并不大,同样使用 选择器 后 带大括号 的形式,牛逼的是大括号里还可以写  选择器 +大括号 的形式,

在不考虑渲染优化的情况下可以无限套下去,但是考虑到浏览器渲染任务繁重,往往最多只套4层。

.body{  width:100%;   .section{    border:1px solid #000;  }
}

/*解析后的效果是下面这样的*/
.body{  width:100%;
}
.body .section{
    border:1px solid #000;  }

除了套用,还可以引用:


.section{
    border:1px solid #000;
  }
.body{
  width:100%;
   .section;
} /* 解析后的效果是下面这样的 */ 

.body{   width:100%;
  border:1px solid #000;
} 

除了以上的,还能使用传参,哈哈哈

.border_radius(@radius:5px){
    -webkit-border-radius:@radius;
    -moz-border-radius:@radius;
    border-radius:@radius;
}
.cell{
    width: 100%;
    //可以不传参数,默认用5px
    .border_radius(10px)
}

可以说是非常灵活了,随便套随便引。

了解了以上的这些,就可以在实战中使用Less进行项目开发啦!

(完)

时间: 2024-12-23 12:05:20

CSS预处理语言-less 的使用的相关文章

less: CSS 预处理语言

Less 是一门 CSS 预处理语言,它扩展了 CSS 语言,增加了变量.Mixin.函数等特性,使 CSS 更易维护和扩展. Less 可以运行在 Node 或浏览器端. 特点: 优点: 变量 - 它可以让你更轻松的在整个样式表中定义和更改值(这个功能 CSS 在未来某一天也有可能会实现). 动态计算值 - CSS 中最近出了一个 cal(), 但它只适合用于长度的计算. Mixins - 可以让你重用或者组合样式,而且支持传递参数. 函数 - 它为你提供了一些方便的程序去操纵颜色,转换图像等

css预处理语言的模块化实践

编写css是前端工作中,一项普通而又频繁的劳动,由于css并不是一门语言,所以在程序设计上显得有些简陋.对于小型项目来说,css的量还不至于庞大,问题没有凸显,而如果要开发和持续维护一个较为大型的项目,那就需要对css进行管理和规范了,否则会发生不可挽回的后果(吓唬谁呢??). 背景上一节[从css谈模块化]我们通过规范的约束,将css的编写方式进行了优化和改进,形成一种可持续发展的路线.但还是遗留了一些问题:冗余.虽然我们通过定义公共模块和私有模块,来委婉地分担common的体积,但commo

CSS预处理语言——less与sass的使用

我们一般所使用的Less跟Sass一般是将其编译成我们所熟悉的CSS再导入使用,当然不经编译,直接在浏览器使用 我是习惯用Koala来进行编译,简单智能方便,Hbuilder也自带编译功能,不过要手动,比较麻烦 首先我们来说一下Less. [Less中的变量] 1.声明变量使用 @变量名:变量值: 2.使用变量 @变量名 >>less中的变量类型: ①数字类 1 10px ②字符串:无引号字符串 red 和有引号字符串"gdak" ③颜色类 red #000000 rgb(

css预处理scss环境配置

css 预处理器 CSS 预处理器用一种专门的编程语言,进行 Web css编码,然后再编译成正常的 CSS 文件,以供项目使用:说简单点就是在某个环境下写css 可以写变量.表达式.嵌套等,在通过该环境将css预处理的语言编译成正常的css文件; sass与scss 学习网站:  http://sass.bootcss.com/ sass是采用Ruby语言编写的一款css预处理语言.Sass的缩进语法,对于写惯css前端的web开发者来说很不直观,也不能将css代码加入到Sass里面,因此sa

CSS预处理——LESS

LESS是什么? less是一门CSS预处理语言.由于CSS本身并不是程序式语言,不方便维护和扩展,没有变量.函数.作用域等概念.而LESS在CSS的基础语法之上,引入了变量.Mixin混入.运算以及函数等功能,大大简化了CSS的编写,降低了CSS的维护成本. 本质上,LESS包含一套自定义的语法及一个解析器,写好的LESS文件会通过解析器编译生成CSS文件.LESS并没有建材CSS原有的特性,更不是用来取代CSS的,而是在现有的语法基础上,为CSS加入程序式语言的功能特性.所以,标准的CSS文

前端面试:css预处理

css预处理定义: 定义了一种新的语言,其基本思想是用一种专门编程语言,为css增加了一些编程的特性,将css作为目标生成文件,然后开发者就只要使用这种语言进行编码工作. 几种预处理语言 sass less stylus turbine swithch css css cacheer dt css

第二次讨论——响应式设计、布局技巧、css性能优化、css预处理

第二次讨论 [响应式设计] 集中创建页面的图片排版大小,可以智能地根据用户行为以及使用的设备环境(系统平台.屏幕尺寸.屏幕定向等)进行相对应的布局. 响应式布局: meta标签的实用:设置布局宽度等于设备宽度,布局viewport等于度量viewport <meta name="viewport" content="width=device-width,initial-scale=1"> [[布局]] [水平居中] 一.text-align和inline

CSS预处理器之less和sass

CSS预处理器 1.        基于CSS的另一种语言 2.        通过工具编译成CSS 3.        添加了很多CSS不具备的特性 4.        能提升CSS文件的组织方式 CSS预处理器的作用 1.        帮助更好的组织CSS代码 2.        提高代码复用率 3.        提升可维护性 CSS预处理种类 1.        Less 文件后缀名:.less a)       基于node写的 b)       JS写的编译速度快 2.      

谈谈CSS预处理技术中for循环的应用-CSS Sprite

各种新技术的出现,推动着Web前端技术飞速发展,在提升用户体验的同时也方便开发者: 在前端优化时,我们使用CSSSprite技术,把多个图片合在一张图片上,然后通过background-image,background-position来定位现实不同效果,这样来达到减少HTTP请求,毕竟HTTP请求是相当昂贵的,但是HTTP请求是少了,开发人员工作量就大了,要定位图片不是一件很方便的事情,非常麻烦,要一个一个地计算: 其实我们可以有点技巧,让图片排列有点规律,这样可以减少大量时间: 假如我们的图