• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JavaScript > less简单入门(CSS 预处理语言)

less简单入门(CSS 预处理语言)

作者:starof 字体:[增加 减小] 来源:互联网 时间:2017-05-11

starof通过本文主要向大家介绍了less简单入门(CSS 预处理语言)等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Less 是一门 CSS 预处理语言,它扩充了 CSS 语言,增加了诸如变量、混合(mixin)、函数等功能,让 CSS 更易维护、方便制作主题、扩充。

Less 可以运行在 Node、浏览器和 Rhino 平台上。网上有很多第三方工具帮助你编译 Less 源码。

官网地址

http://lesscss.org/

less手册

www.lesscss.net/

bootstrap官网less介绍

http://less.bootcss.com/

一、浏览器端环境搭建
github下载地址:https://github.com/less/less.js

1、js引入
搭建Less的学习环境非常简单,只需在</body>标签前通过<script type="text/javascript" src="less.js"></script>引入处理器即可实现浏览器端中将less预编译为css样式。

更有效的方式是通过如下代码监测less样式,自动编译为css样式,从而减少我们修改less代码后需按F5后才看到实际效果的繁琐步骤。

<script>less = { env: 'development'};</script>
<script src="less.js"></script>
<script>less.watch();</script>
</div>

Note:注意你的less样式文件一定要在引入less.js前先引入。

2、less的css样式处理
less内联样式和外联样式

基于我们现在使用的是浏览器端进行预编译,因此Less可用于内联样式和外联样式当中。

内联样式如下:

<style type="text/less">
 // less 代码
</style>
</div>

外联样式引入如下:

Note:注意rel的值是stylesheet/less

<link rel="stylesheet/less" type="text/css" href="文件.less" rel="external nofollow" />

二、语法
1、注释

// 单行注释,不会作为最终输出
/* 
多行注释,以原生CSS的/*注释....*/形式作为最终输出
*/
</div>

2、变量
Less中的变量有以下规则:

以@作为变量的起始标识,变量名由字母、数字、_和-组成
没有先定义后使用的规定;
以最后定义的值为最终值;
可用于rule值、rule属性、rule属性部件、选择器、选择器部件、字符串拼接;
定义时 "@变量名: 变量值;" 的形式;引用时采用 "@变量名" 或 "@{变量名}" 的形式;
存在作用域,局部作用域优先级高于全局作用域。
Note:注意直接拷贝网页中代码可能因为一些空白符的原因导致编译出错。

less源码

@color: color;
 @dialog: .dialog;
 @suffix: fix;
 // 空格将被忽略,若要保留空格则需要使用单引号或双引号
 @hi: 'hello ';
 @dear: there ;
 
 .dialog{
 // 用于 rule属性部件,必须使用"@{变量名}" 的形式
 background-@{color}: #888;
 // 用于 rule属性,必须使用"@{变量名}" 的形式
 @{color}: blue;
 }
 // 用于 选择器,必须使用"@{变量名}" 的形式
 @{dialog}{
 width: 200px;
 }
 @{dialog}::after{
 content: ': @{hi}@{dear}!'; // 用于 字符串拼接,必须使用"@{变量名}" 的形式
 }
 @h: 1000px;
 // 用于 选择器部件,必须使用"@{变量名}" 的形式
 .ie-@{suffix}{
 @h: 30px; // 存在作用域,局部作用域优先级高于全局作用域。
 height: @h; // 用于 属性值,两种形式均可使用
 line-height: 30px;
 }
 
 // 1. 以@作为变量的起始标识,变量名由字母、数字、_和-组成
 // 2. 没有先定义后使用的规定;
 @dialog-border-color: #666;
 @dialog-border-width: 10px;
 @dialog-border-width: 1px; // 3. 以最后定义的值为最终值;
</div>

最终输出:

.dialog {
 background-color: #888;
 color: blue;
}
.dialog {
 width: 200px;
}
.dialog::after {
 content: ': hello there!';
}
.ie-fix {
 height: 30px;
 line-height: 30px;
}
</div>

三、gulp编译less
1、安装
全局安装:npm install -g less

项目内安装:npm install gulp-less --save-dev

2、使用

var gulp=require("gulp");
var less=require("gulp-less");


gulp.task("less",function(){
gulp.src('src/css/*.less')
.pipe(less())
.pipe(gulp.dest("src/css"));
});

//监视文件的变化
gulp.task("watch",function(){
gulp.watch("src/css/*.less",['less']);
});
</div>

参考:http://www.weikejianghu.com/article/107875.htm

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-11原生js实现鼠标跟随效果
  • 2017-05-11超全面的vue.js使用总结
  • 2017-05-11微信小程序 登陆流程详细介绍
  • 2017-05-11Bootstrap页面标题Page Header的实现方法
  • 2017-05-11常用的几个JQuery代码片段
  • 2017-05-11基于JavaScript实现的希尔排序算法分析
  • 2017-05-11js 博客内容进度插件详解
  • 2017-05-11JS实现选定指定HTML元素对象中指定文本内容功能示例
  • 2017-05-11Angular中ng-bind和ng-model的区别实例详解
  • 2017-05-11详解在Angularjs中ui-sref和$state.go如何传递参数

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • JavaScript实现垂直滚动条效果
    • jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
    • javascript 判断当前浏览器版本并判断ie版本
    • JavaScript数组和对象的复制
    • Vuex之理解state的用法实例
    • javascript html5轻松实现拖动功能
    • bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
    • 浅谈jQuery的bind和unbind事件(绑定和解绑事件)
    • Js时间戳毫秒数转日期格式化
    • AngularJS之自定义服务详解(factory、service、provider)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有