LESS 学习记录(简单入门)
什么是 LESS
LESS是一种动态样式语言,属于 CSS 预处理语言的一种。它使用类似 CSS 的语法,但是 赋予了动态语言的特性,比如变量、继承、运算、函数等,方便 CSS 的编写和维护。
使用 LESS
在开发环境下的时候,推荐直接使用浏览器使用 LESS。
- 下载 LESS.js 文件。
- 页面中引入 styles.less 文件所有 .less 必须在 LESS.js 前引入。(服务器必须设置 .less 文件的 MIME 为 text/css)
- 引入 JS 文件
开发完毕后,推荐使用 node.js 进行预编译,将 .less 编译成 .css
- 通过 npm 安装
npm install -g less
- 安装完毕后,将 .less 编译成 .css
lessc style.less > style.css
- 引入该 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 学习记录(简单入门)的更多相关文章
- mybais学习记录一——入门程序
一.传统连接数据库和执行sql的不足 1.数据库连接,使用时就创建,不使用立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响 数据库性能. 设想:使用数据库连接池管理数据库连接. 2. ...
- Quartz学习——Quartz简单入门Demo(二)
要学习Quartz框架,首先大概了解了Quartz的基本知识后,在通过简单的例子入门,一步一个脚印的走下去. 下面介绍Quartz入门的示例,由于Quartz的存储方式分为RAM和JDBC,分别对这两 ...
- Java设计模式学习记录-简单工厂模式、工厂方法模式
前言 之前介绍了设计模式的原则和分类等概述.今天开启设计模式的学习,首先要介绍的就是工厂模式,在介绍工厂模式前会先介绍一下简单工厂模式,这样由浅入深来介绍. 简单工厂模式 做法:创建一个工厂(方法或类 ...
- 学习记录----简单的原生js路由
在以前的web程序中,路由字眼只出现在后台中.但是随着SPA单页面程序的发展,便出现了前端路由一说.单页面顾名思义就是一个网站只有一个html页面,但是点击不同的导航显示不同的内容,对应的url也会发 ...
- SpringMVC学习记录一——入门介绍和入门程序
1 springmvc框架 1.1 什么是springmvc springmvc是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合. spr ...
- 安卓学习-- RecyclerView简单入门
一.加入JAR包 第一感觉这个东东,好复杂,没ListView来的快,方便 在项目中加入android-support-v7-recyclerview.jar包 这个包在extras\android\ ...
- gulp学习笔记--简单入门
一.准备工作 1.gulp是基于nodeJS的前端构建工具,所以全局安装nodeJS 2.利用npm全局安装gulp. npm install -g gulp 3.在项目根目录下新建文件package ...
- Vue学习记录第一篇——Vue入门基础
前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...
- springboot 学习之路 1(简单入门)
目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...
随机推荐
- React Native使用AsyncStorage本地持久化
AsyncStorage AsyncStorage是一个简单的,未加密的,异步的,持久化,关键值存储系统,是全局的.类似于iOS中的NSUserDefault. 存值: import { AppReg ...
- gcc学习笔记
1:第一个程序 : hello world #include <stdio.h> int main(void) { printf("Hello , world ! \n" ...
- 转: SQL Server索引的维护 - 索引碎片、填充因子
转:http://www.cnblogs.com/kissdodog/archive/2013/06/14/3135412.html 实际上,索引的维护主要包括以下两个方面: 页拆分 碎片 这两个问题 ...
- linux 下find命令 --查找文件名
1.在某目录下查找名为"elm.cc"的文件 find /home/lijiajia/ -name elm.cc 2.查找文件名中包含某字符(如"elm")的文 ...
- POJ 1990 MooFest(树状数组)
MooFest Time Limit: 1000MS Mem ...
- ArcGIS+API+for+JS测距
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jquery 如何遍历json
var obj = {"status":1,"bkmsg":"\u6210\u529f","bkdata":[" ...
- List和Map之间的转换和关联
首先,Map.values返回的是此Map中包含的所有值的collection视图. 然后利用ArrayList的构造器ArrayList(Collection<? extends E> ...
- AttributeTargets 枚举
AttributeUsage AttributeTargets 在C#的类中,有的类加上了[AttributeUsage(AttributeTargets.Property)]这个是起什么作用的呢?A ...
- iOS 关于GCD中的队列
GCD中队列分类及获得方式 1.串行队列 dispatch_queue_t queue = dispatch_queue_create("队列名", DISPATCH_QUEUE ...