什么是 LESS


  LESS是一种动态样式语言,属于 CSS 预处理语言的一种。它使用类似 CSS 的语法,但是 赋予了动态语言的特性,比如变量、继承、运算、函数等,方便 CSS 的编写和维护。

  使用 LESS


    在开发环境下的时候,推荐直接使用浏览器使用 LESS。

  1.   下载 LESS.js 文件。
  2.   页面中引入 styles.less 文件所有 .less 必须在 LESS.js 前引入。(服务器必须设置 .less 文件的 MIME 为 text/css)
  3.   引入 JS 文件

    开发完毕后,推荐使用 node.js 进行预编译,将 .less 编译成 .css

  1.   通过 npm 安装

      npm install -g less

  2.   安装完毕后,将 .less 编译成 .css

      lessc style.less > style.css

  3.   引入该 style.css 文件

  以下是自己尝试的玩意.

  .less 文件

@red:red;	// 设置变量
@blue:blue; // 变量放顶部,以后调整的时候直接调整变量
@size:22px;
@darkblue:darken(@blue,10%); // 执行函数,返回加深后的颜色
@url:"http://static.cnblogs.com/images/adminlogo.gif";
@name:active; #div{
h3{ // 嵌套
@size:32px;
color:@red; // 调用变量
font-size:@size;
&.@{name} { // 选择器插值
font-size:@size+10;
background:url("@{url}") no-repeat; // 字符串插值
}
}
h4 {
color:@blue;
font-size:@size+10; // 运算
&:hover { // 调用变量
.h4-hover(#333); // 调用属性集合 将参数传进去
}
&:before{
@var: ~`"hello".toUpperCase() + ','`;
content:"@{var}";
}
}
}
.h4-hover(@color){ // 属性集合,可接受一个参数
border:1px solid @color;
color:@darkblue;
}
/* 当 .less 文件被编译成 .css 的时候这条注释还在 */
// 当 .less 文件被编译成 .css 的时候这条注释不见了

  编译后的 css

#div h3 {
color: red;
font-size: 32px;
}
#div h3.active {
font-size: 42px;
background: url("http://static.cnblogs.com/images/adminlogo.gif") no-repeat;
}
#div h4 {
color: blue;
font-size: 32px;
}
#div h4:hover {
border: 1px solid #333;
color: #0000cc;
}
#div h4:before {
content: "HELLO,";
}
/* 当 .less 文件被编译成 .css 的时候这条注释还在 */

  

LESS 学习记录(简单入门)的更多相关文章

  1. mybais学习记录一——入门程序

    一.传统连接数据库和执行sql的不足 1.数据库连接,使用时就创建,不使用立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响 数据库性能. 设想:使用数据库连接池管理数据库连接. 2. ...

  2. Quartz学习——Quartz简单入门Demo(二)

    要学习Quartz框架,首先大概了解了Quartz的基本知识后,在通过简单的例子入门,一步一个脚印的走下去. 下面介绍Quartz入门的示例,由于Quartz的存储方式分为RAM和JDBC,分别对这两 ...

  3. Java设计模式学习记录-简单工厂模式、工厂方法模式

    前言 之前介绍了设计模式的原则和分类等概述.今天开启设计模式的学习,首先要介绍的就是工厂模式,在介绍工厂模式前会先介绍一下简单工厂模式,这样由浅入深来介绍. 简单工厂模式 做法:创建一个工厂(方法或类 ...

  4. 学习记录----简单的原生js路由

    在以前的web程序中,路由字眼只出现在后台中.但是随着SPA单页面程序的发展,便出现了前端路由一说.单页面顾名思义就是一个网站只有一个html页面,但是点击不同的导航显示不同的内容,对应的url也会发 ...

  5. SpringMVC学习记录一——入门介绍和入门程序

    1       springmvc框架 1.1      什么是springmvc springmvc是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合. spr ...

  6. 安卓学习-- RecyclerView简单入门

    一.加入JAR包 第一感觉这个东东,好复杂,没ListView来的快,方便 在项目中加入android-support-v7-recyclerview.jar包 这个包在extras\android\ ...

  7. gulp学习笔记--简单入门

    一.准备工作 1.gulp是基于nodeJS的前端构建工具,所以全局安装nodeJS 2.利用npm全局安装gulp. npm install -g gulp 3.在项目根目录下新建文件package ...

  8. Vue学习记录第一篇——Vue入门基础

    前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...

  9. springboot 学习之路 1(简单入门)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

随机推荐

  1. C++ 文件读取

    #include <iostream> #include <fstream> #include <string> using namespace std; int ...

  2. [原创]cocos2d-x研习录-第一阶 背景介绍 之 cocos2d-x特点

        上一节了解Cocos2D家族史,本节关注Cocos2D家庭的一个重要分支Cocos2D-x.Cocos2D-x是Cocos2D的C++移植版本,它的最大特性是跨平台,使开发者编写一套C++代码 ...

  3. Unity3D基础知识梳理

    这段时间在做Unity的项目,这差不多是我的第一次实战啊~然后公司来了实习的童鞋要学Unity,但是我一向不靠谱啊,所以只能帮他们稍微梳理下基础的东西了啊,唉~学长只能帮你们到这里了~顺便就把自己这两 ...

  4. unity, scene视图查看场景时应调成正交模式

    scene视图查看场景时应调成正交模式,以避免稍微滑动滚轮就导致视角过远或过近.

  5. 极值问题(acms)

    [问题描述] 已知m.n为整数,且满足下列两个条件: ① m.n∈{1,2,…,k},即1≤m,n≤k,(1≤k≤109). ②(n2-m*n-m2)2=1 你的任务是:编程输入正整数k,求一组满足上 ...

  6. error setting certificate verify locations: CAfile: E:/git/Git/mingw64/ssl/certs/ca-bundle.crt

    一.问题: 当git clone项目时报 error setting certificate verify locations: CAfile: E:/git/Git/mingw64/ssl/cert ...

  7. error while loading shared libraries:错误的原因和解决方法

    原因有两个: 1.操作系统没有改共享库 2.安装了该共享库,但是执行外部程序调用该共享库的时候,程序按照默认路径(/usr/lib./lib)找不到该共享库文件 解决方法: ubuntu系统的共享库一 ...

  8. 【MySQL】探究之null与not null

    相信很多用了mysql很久的人,对这两个字段属性的概念还不是很清楚,一般会有以下疑问: 我字段类型是not null,为什么我可以插入空值 为毛not null的效率比null高 判断字段不为空的时候 ...

  9. windows server2012 r2 上 安装 IIS8.5

    一时间不知道怎么开头了,直接上图吧! 本人技术不高,正在学习中, 要是有 喜欢 .Net,觉得酷的,欢迎来 QQ群  316497348  交流分享!

  10. 5、Linux 系统基本文件管理

    1.Linux系统目录结构 /etc    ----> 配置文件   /boot  ----> 引导分区/挂载点, boot loader 的静态链接文件,存放与Linux启动相关的程序 ...