最近在写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. 【Leetcode 做题学算法周刊】第八期

    首发于微信公众号<前端成长记>,写于 2020.05.07 背景 本文记录刷题过程中的整个思考过程,以供参考.主要内容涵盖: 题目分析设想 编写代码验证 查阅他人解法 思考总结 目录 15 ...

  2. 在UOS 上部署 django + uwsgi + nginx 流程

    前言:这篇主要是流程,不喜勿喷,虽然我知道在部署过程中 参照博客写的越详细越好. 强大的百度会解决一切的 爬了诸多坑 ,心累,必须总结!! 最近 芯片封锁闹的很凶  支持国产!! UOS 统一操作系统 ...

  3. ios 创建sdk与demo同一个工程

    思路摘要: 步骤1:创建一个文件夹用来放该项目 步骤2:设置工程工作区间 步骤3:  创建广告sdk项目 步骤4:创建广告sdkDemo项目 步骤5:配置一些文件 步骤6:将sdk导入到demo中进行 ...

  4. 直播报名 | 8.29 Kylin Meetup – 来聊聊云原生

    云原生的巨浪正在席卷全球的软件产业,包括开源和商业软件.Apache Kylin 正在为此而积极准备着:基于新的计算和存储引擎,即将发布的 Kylin 4.0 将实现真正的计算和存储分离,减小运维难度 ...

  5. 痞子衡嵌入式:解锁i.MXRTxxx上FlexSPI模块自带的地址重映射(Remap)功能

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT三位数系列隐藏的FlexSPI Remap功能. 前段时间痞子衡写了一篇文章 <利用i.MXRT1060,1010上新 ...

  6. golang 判断前缀后缀、包含关系

    HasPrefix 判断字符串 s 是否以 prefix 开头:strings.HasPrefix(s, prefix string) bool HasSuffix 判断字符串 s 是否以 suffi ...

  7. gorm demo

    package main import ( "fmt" "github.com/jinzhu/gorm" _ "github.com/jinzhu/g ...

  8. QPS过万,redis大量连接超时怎么解决?

    7月2号10点后,刚好某个负责的服务发生大量的redis连接超时的异常(redis.clients.jedis.exceptions.JedisConnectionException),由于本身的数据 ...

  9. mr原理简单分析

    背景 又是一个周末一天一天的过的好快,今天的任务干啥呢,索引总结一些mr吧,因为前两天有面试问过我?我当时也是简单说了一下,毕竟现在写mr程序的应该很少很少了,废话不说了,结合官网和自己理解写起. 官 ...

  10. Kubernetes使用Eedpoints连接外部服务端口

    Kubernetes使用Eedpoints连接外部服务端口 背景: 在Kubernetes的使用环境中,我们经常要连接外部的一些服务,比如mysql Elasticsearch kafka 等等外部的 ...