最近在写css的时候,发现自己写的css特别长,觉得自己写的特别low,所以为了加快自己的开发效率,又重新温习了less,下面就是我学习less的过程。

less是不能被浏览器识别的,要转换成css,有两种方式:

1、硬转换less.js:https://raw.githubusercontent.com/less/less.js/v2.5.3/dist/less.min.js

2、less编译器    npm install less -g  -》lessc style.less style.css

如果想要压缩的版本 还需要安装 less-plugin-clean-css    npm install less-plugin-clean-css -》lessc  style.less  style.css  -clean-css

less 是什么

1、是一种预编译语言
2、有面向对象的思想

less解决什么问题

1、css前缀长
2、css代码复用

less的语法

1、function
杂项函数
字符串函数
列表函数
数学函数
类型函数
颜色定义函数
颜色通道函数
颜色操作函数
颜色混合函数
2、语言特性
变量
混合
嵌套规则& 表示当前选择器的父选择器
四则运算
自定义的函数
命名空间
作用域
3、嵌套思维
4、&思维

less语法
.transition(@duration:1s){
-webkit-transition:@arguments;
-moz-transition:@arguments;
-o-transition:@arguments;
-ms-transition:@arguments;
transition:@arguments;
}
.transform(@rotate:360deg){
-webkit-transform: rotate(@rotate);
-moz-transform: rotate(@rotate);
-o-transform: rotate(@rotate);
-ms-transform: rotate(@rotate);
transform: rotate(@rotate);
}
.outer{
margin: 50px;
width: 200px;
height: 200px;
border: solid 1px green;
@shadowColor:#000;
.inner{
margin: 20px;
height: 100px;
width: 100px;
background: lightblue;
box-shadow: 0 0 5px 0 @shadowColor;
.transition(@duration:0.5s);
}
&:hover {
.inner{
box-shadow: 0 0 5px 0 lighten(@shadowColor, 30%);
.transform();
}
} }
.mixin(@x){z-index:@x;}
.span1{
color:color("#aaa");
box-shadow:image-size("./1.png");
width: image-width("./1.png");
height: image-height("./1.png");
transition: convert(1s, "ms");
.mixin(3);
display: block;
margin-top:unit(5,px);
z-index: get-unit(5px);
}
@list :bold,"b","c","d";
.span2{
display: block;
color:escape("red");
font-family: replace("Times New Roman", "Times New Roman", "arial");
z-index: length(@list);
font-weight: extract(@list, 1);
}
.span3{
display: block;
z-index: ceil(3.3);
z-index: floor(3.7);
width: percentage(.5);
z-index: round(2.33);
z-index: round(1.53,1);
z-index: sqrt(36);
z-index: abs(-5);
z-index: max(1, 2);
z-index: min(1,2);
}
.span4{
display: block;
color:rgb(90, 129, 32);
color:rgba(123, 12, 34,0.5);
}
@red:red;
.span5{
display: block;
opacity: alpha(#eee);
color:lighten(@red, 30%);
border: solid 1px darken(@red, 50%);
}
.@{red}{
color:red;
}
@url:"./"; .span6{
display: block;
.red;
width: 100px;
height: 100px;
background: url("@{url}1.png");
}
.inline{
display: inline-block;
color:green;
}
.span7{
a{
color:yellow;
}
&:extend(.inline);
}
.a,#b{
color:blue;
}
.span8{
.a();
}
.loop(@counter) when (@counter>0){
.loop(@counter - 1);
width: (10px * @counter);
}
.span9{
.loop(3);
& {
color:#9a9a9a;
}
}
less写购物商城的例子
@import "reset.min.css";
@fff:#ffffff;
.float(@direction:left){
float: @direction;
}
html body{
width: 100%;
height: 100%;
background: #f4f4f4;
}
.container{
margin:20px auto;
width: 1200px;
overflow: hidden;
}
.header{
background: @fff;
span{
.float();
width: 90px;
height: 50px;
line-height: 50px;
text-align: center;
font-size: 14px;
}
a{
&:extend(.header span);
width: auto;
padding: 0 15px;
color:#999;
&:hover{
color:#e01d20;
}
} }
.productBox{
margin-top: 20px;
width: 1210px;
li{
.float();
margin: 0 10px 10px 0;
a{
display: block;
width: unit(1210/5-10-6-32, px);
border: 3px solid transparent;
padding: 0 16px;
background: @fff;
img{
display: block;
width: 100%;
}
p{
line-height: 20px;
height: 40px;
overflow: hidden;
font-size: 14px;
color:#999;
}
span{
line-height: 30px;
color:#555;
font-size: 16px;
}
&:hover{
border-color: #101d20;
border-radius: 5px;
box-shadow: 0 0 5px 0 #333;
}
} }
}

学习 | less入门的更多相关文章

  1. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  2. [IT学习]sql 入门及实例

    sql 是一种数据库查询语言,可以让你很快的查询到数据.其实一般情况下,你也可以采用excel来查询数据库数据. 但是人们通常认为sql会更加灵活和方便一些. sql学习的入门网站: http://w ...

  3. PHP学习笔记 - 入门篇(5)

    PHP学习笔记 - 入门篇(5) 语言结构语句 顺序结构 eg: <?php $shoesPrice = 49; //鞋子单价 $shoesNum = 1; //鞋子数量 $shoesMoney ...

  4. PHP学习笔记 - 入门篇(4)

    PHP学习笔记 - 入门篇(4) 什么是运算符 PHP运算符一般分为算术运算符.赋值运算符.比较运算符.三元运算符.逻辑运算符.字符串连接运算符.错误控制运算符. PHP中的算术运算符 算术运算符主要 ...

  5. PHP学习笔记 - 入门篇(3)

    PHP学习笔记 - 入门篇(3) 常量 什么是常量 什么是常量?常量可以理解为值不变的量(如圆周率):或者是常量值被定义后,在脚本的其他任何地方都不可以被改变.PHP中的常量分为自定义常量和系统常量 ...

  6. PHP学习笔记--入门篇

    PHP学习笔记--入门篇 一.Echo语句 1.格式 echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来) 如下代码 <?php echo "Hello world! ...

  7. netty深入学习之一: 入门篇

    netty深入学习之一: 入门篇 本文代码下载: http://download.csdn.net/detail/cheungmine/8497549 1)Netty是什么 Netty是Java NI ...

  8. LESS学习笔记 —— 入门

    今天在网上完成了LESS的基础学习,下面是我的学习笔记.总共有三个文件:index.html.main.less.mian.css,其中 mian.css 是 main.less 经过Koala编译之 ...

  9. Java工程师学习指南 入门篇

    Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...

  10. .NET学习从入门到精通100+源代码(申明:来源于网络)

    .NET学习从入门到精通100+源代码大放送 (20161128更新)(申明:来源于网络) 地址:http://download.csdn.net/album/detail/3364

随机推荐

  1. OptaPlanner的新约束表达方式 Constraint Streams

    有好些时间没有写过关于OptaPlanner的东西了,其实近半年来,OptaPlanner还是推出了不少有用.好用的新特性.包括本文讲到的以Stream接口实现评分编程.关于OptraPlanner的 ...

  2. 精讲响应式webclient第1篇-响应式非阻塞IO与基础用法

    笔者在之前已经写了一系列的关于RestTemplate的文章,如下: 精讲RestTemplate第1篇-在Spring或非Spring环境下如何使用 精讲RestTemplate第2篇-多种底层HT ...

  3. SparkStreaming概述

    Spark Streaming 是Spark核心API的一个扩展,可以实现高吞吐量的.具备容错机制的实时流数据的处理. ◆ 支持从多种数据源获取数据,包括Kafka.Flume.Twitter.Zer ...

  4. Kubernetes 编写自定义 controller

    原文链接:Kubernetes编写自定义controller 来自kubernetes官方github的一张图: 如图所示,图中的组件分为client-go和custom controller两部分: ...

  5. count.exe 个人项目

    Github项目地址:https://github.com/bravedreamer/wordCount/tree/master/wc 一.题目描述: Word Count1. 实现一个简单而完整的软 ...

  6. phoenix PQS的kerberos相关配置

    thin 客户端的实例代码 jdbc:phoenix:thin:url=<scheme>://<server-hostname>:<port>;authentica ...

  7. IDEA 代码自动补全/自动联想 功能

    IDEA 的代码补全/自动联想功能,可以仅仅输入几个字母,自动补全一整段代码,非常舒服. 代码自动联想功能在 设置 -> Editor -> Live Templates 查看,很多都非常 ...

  8. 自己搭建的集群,启动hadoop时slave节点的datanode没有启起来怎么办?

    自己搭建的集群,启动hadoop 集群是,发现slave节点的datanode没有启动,查了资料发现是因为我在启动集群前,执行了这个命令: hadoop namenode -format 这个指令会重 ...

  9. Android Weekly Notes Issue #428

    Android Weekly Issue #428 Kotlin Flow Retry Operator with Exponential Backoff Delay 这是讲协程Flow系列文章中的一 ...

  10. ent orm笔记4---Code Generation

    在前面几篇文章中,我们经常使用的可能就是entc这个命令了,entc这个工具给带来了很多功能,这篇文章主要整理关于ent orm 中Code Generation 之前的例子中有个知识点少整理了,就是 ...