LESS的一点自己的理解(2)
上次写的一点居然忘了保存了,虽然说编辑器有自动保存的功能,但是昨天写的依然找不到了,/(ㄒoㄒ)/~~那好吧,重新开始写。
1.上篇写到了Mixins(混入),如果你仔细看了上面的例子,你就会发现其实有一种嵌套用法我们一直在用,却没有明确的表现出来。先看下面的Html代码
<div id="home">
<div id="top">top</div>
<div id="center">
<div id="left">left</div>
<div id="right">right</div>
</div>
</div>
上面的层级关系相信不用我多说,大家一看就能明白。如果这时让我们写Css是不是要#home{……}、#home #top{……}、#home #center #left{……},这样一个一个的嵌套,如果少写了几个就会造成书写的权重不够,从而导致以后的更改,或者是自己的校验造成很大的麻烦。所以就有必要看看Less是怎么干的了。
#home {
color: blue;
width: 600px;
height: 500px;
border: outset;
#top {
border: outset;
width: 90%;
}
#center {
border: outset;
height: 300px;
width: 90%;
#left {
border: outset;
float: left;
width: 40%;
}
#right {
border: outset;
float: left;
width: 40%;
}
}
}
发现这里写样式就和Html一样,嵌套关系非常的明显。父子关系清晰,权重问题不用担心,最小的辈分权重最大,可以看看编译之后的效果:
#home {
color: blue;
width: 600px;
height: 500px;
border: outset;
} #home #top {
border: outset;
width: 90%;
} #home #center {
border: outset;
height: 300px;
width: 90%;
} #home #center #left {
border: outset;
float: left;
width: 40%;
} #home #center #right {
border: outset;
float: left;
width: 40%;
}
编译之后就会发现,其实跟我们自己写的是一样的。他会把每个标签都写上,这样就不会担心权重的问题。
既然有了嵌套,就不得不提到“&”,直接看下面的例子:
a {
color: red;
text-decoration: none;
&:hover { // 有 & 时解析的是同一个元素或此元素的伪类,没有 & 解析是后代元素
color: black;
text-decoration: underline;
}
}
然后是编译之后的效果:
a {
color: red;
text-decoration: none;
}
a:hover {
color: black;
text-decoration: underline;
}
2.既然说Less特别像JS,最少是不是能进行加减运算呢,其实还真能,但是怎么加减乘除运算呢,难道一个padding:5px+padding:5px=10px???当然不是了,请看下面的例子:
@init: #111111;
@transition: @init*2;
.switchColor {
color: @transition;
}
在代码中定义了两个变量,第一个变量是@init,他代表着一个颜色#111111;然后@teansition是@init*2;其实我也蒙了,这是什么呢?请看编译完成之后的效果:
.switchColor { color: #222222; } 其实就是进行了简单的乘法,我们知道白色就是#FFFFFF,要是#AAAAAA*2呢?结果会是什么呢?首先看一下Less:
@init:#AAAAAA;
@init2:@init*2;
.color{
color: @init2;
}
编译之后的Css文件: .color { color: #ffffff; }//也就是说最大就是#FFFFFF,不能超出这个范围了。
到这里基本上Less的常用方法就是这些了。还有关于颜色的一些用法,因为我不是很常用,就不在这里一一赘述了。有兴趣的朋友可以去看Less的官网。 http://lesscss.org/#-color-functions
最后能给大家一个非常使用的小工具,考拉,非常的方便的一个LESS编译小工具,关键是还有中文。http://pan.baidu.com/s/1jH95hBK
LESS的一点自己的理解(2)的更多相关文章
- [转载]对iOS开发中内存管理的一点总结与理解
对iOS开发中内存管理的一点总结与理解 做iOS开发也已经有两年的时间,觉得有必要沉下心去整理一些东西了,特别是一些基础的东西,虽然现在有ARC这种东西,但是我一直也没有去用过,个人觉得对内存操作 ...
- LESS的一点自己的理解(1)
写前端的时间也不短了,Less也用过几次,都是现学现用,没有仔细的梳理过,今天就有条理的梳理下.参考文章是一篇不错的哦.下面会附上链接的,废话不多说,开始正题. 首先应该说下什么是Less,Less是 ...
- react与redux的一点心得(理解能力有限,蜗牛进度)
Redux是一款状态管理库,并且提供了react-redux库来与React亲密配合, 但是总是傻傻分不清楚这2者提供的API和相应的关系.这篇文章就来理一理. 如果要用一句话来概括Redux,那么可 ...
- 深入理解JS的delete
原文链接: Understanding delete原文作者: Kangax原文日期: 2010年01月10日 翻译日期: 2014年02月07日 翻译人员: 铁锚 !!!!!!!!草稿版本的翻译完成 ...
- 深入理解JVM—字节码执行引擎
原文地址:http://yhjhappy234.blog.163.com/blog/static/3163283220122204355694/ 前面我们不止一次的提到,Java是一种跨平台的语言,为 ...
- JavaScript——以简单的方式理解闭包
闭包,在一开始接触JavaScript的时候就听说过.首先明确一点,它理解起来确实不复杂,而且它也非常好用.那我们去理解闭包之前,要有什么基础呢?我个人认为最重要的便是作用域(lexical scop ...
- [转] JavaScript 原型理解与创建对象应用
这段时间把之前的 JavaScript 的笔记复习了一遍,又学习了一些新的内容,所以把自己的学习笔记加上个人理解在这里总结一下,并提供一个简单的应用示例,希望能帮助一些刚入门的朋友.主 要参考< ...
- 【Java】理解 UDDI 注册中心的 WSDL
如何发布和查找 WSDL 服务描述 Web 服务描述语言(WSDL)有多种用法.特别是,根据应用程序的需要,WSDL 在 UDDI 注册中心有好几种使用方法.在这第 1 篇文章中(本系列共三篇),我们 ...
- 深入理解jdk和jre(转)
转自:http://ihyperwin.iteye.com/blog/1513754 大家肯定在安装JDK的时候会有选择是否安装单独的jre,一般都会一起安装,我也建议大家这样做.因为这样更能帮助大家 ...
随机推荐
- Java引领新生活
阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我觉得师生关系应当是亲密无间,课上老师讲解学生配合,课下师生交流启发思考. 你有什么技能(学习,棋类,球类,乐器,艺术,游戏,......)比大多 ...
- docker工作流程
Docker提供一种方法在容器中运行安全隔离的应用程序,应用程序与所有依赖项和库一起打包在容器中.因为你的应用程序总是可以使用它在构建镜像中期望的环境运行,测试和部署比以往任何时候都更简单,因为你的构 ...
- cuda内存总结
1.shared memory __shared__ 声明为共享内存,将会保存在共享内存中 2.constant memory __constant__ 声明为常量内存,将会保存在常量内存中,常量内 ...
- geoR文档翻译
说来惭愧,很久没有更新自己的博客了.期间个人生活经历了很多变故,心理上的打击尤甚.加之没有取得好的科研成果,痛定思痛,还是下苦功夫多多学习. 最近对比验证各种方法的插值精度,用到了R语言地统计学包,由 ...
- MySQL基础入门-第一课 新建数据库(linux版本)
MySQL linux 登录MySQL sudo ),name ),phone ) ); # 或者 ),name ),phone )); 数据类型 数据类型 大小(字节) 用途 格式 INT ...
- python服务器环境搭建(3)——参数配置
前面我们已安装好了python服务器运行所需要的相关软件,而最重要最繁琐的就是参数配置,写这篇就踩了好多坑,花了好多时间,遇到了各种各样的问题.好了费话少说,直接进入本篇话题. PS:本人不是专业的运 ...
- openfire当中的Custom Database Integration Guide的配置
openfire官网配置的链接为:Custom Database Integration Guide 按照上面的步骤一步步配置在xml当中,发现始终不起作用,最后在stackoverflow找到的链接 ...
- [UWP]涨姿势UWP源码——适配电脑和手机
上一篇我们介绍了绘制主界面的MainPage.xaml,本篇则会结合MainPage.xaml.cs来讲一讲如何适配电脑和手机这些不同尺寸的设备. 同时适配电脑和手机存在几个麻烦的地方: 屏幕尺寸差距 ...
- PL/SQL编程重点语句输出整理
create or replace procedure pr_mytest is v_test number() :=; v_char varchar2():='数据库'; c_changl cons ...
- 高可用系列之Nginx
1.1Keepalived高可用软件 Keepalived起初是专为LVS设计的,专门用来监控LVS集群系统中各个服务节点的状态,后来又加入了VRRP的功能,因此除了配合LVS服务外,也可以作为其他服 ...