LESS速查

简介: 注释 缓存式注释/*注释内容*/  非缓存式注释//注释内容   变量 @nice-blue: #5B83AD; @light-blue: @nice-blue + #111; #header { color: @light-blue; }   混合 1.

注释

缓存式注释/*注释内容*/ 
非缓存式注释//注释内容

 

变量

@nice-blue: #5B83AD;

@light-blue: @nice-blue + #111;

#header { color: @light-blue; }

 

混合

1.混合类:

.bordered {

border-top: dotted 1px black;

border-bottom: solid 2px black;

}

#menu a {

color: #111;

.bordered;

2.混合带参数:

.border-radius (@radius) {

border-radius: @radius;

-moz-border-radius: @radius;

-webkit-border-radius: @radius;

}}

 

#header {

.border-radius(4px);

}

我们还可以像这样给参数设置默认值:

.border-radius (@radius: 5px) {

border-radius: @radius;

-moz-border-radius: @radius;

-webkit-border-radius: @radius;

}

#header {

.border-radius;

}

 

模式匹配

LESS 提供了通过参数值控制 mixin 行为的功能,让我们先从最简单的例子开始:

.mixin (@s, @color) { ... }

.class {

.mixin(@switch, #888);

}

如果要根据 @switch 的值控制 .mixin 行为,只需按照下面的方法定义 .mixin:

 

.mixin (dark, @color) {

color: darken(@color, 10%);

}

.mixin (light, @color) {

color: lighten(@color, 10%);

}

.mixin (@_, @color) {

display: block;

}

然后调用:

@switch: light;

 

.class {

.mixin(@switch, #888);

}

将会得到以下 CSS:

 

.class {

color: #a2a2a2;

display: block;

}

传给 .mixin 的颜色将执行 lighten 函数,如果 @switch 的值是 dark,那么则会执行 darken 函数输出颜色。

 

运算:

@test:800px;

body{

width:@test - 200; //运算会自动同步单位

}

 

嵌套规则

LESS 可以让我们以嵌套的方式编写层叠样式

#header {

color: black;

 

.navigation {

font-size: 12px;

}

.logo {

width: 300px;

&:hover { text-decoration: none }

}

}

注意 & 符号的使用 — 如果你想写串联选择器,而不是写后代选择器,就可以用到 & 了。这点对伪类尤其有用如 :hover 和 :focus。

例如:

.bordered {

&.float {

float: left;

}

.top {

margin: 5px;

}

}

会输出:

 

.bordered.float {

float: left;

}

.bordered .top {

margin: 5px;

}

 

@arguments 变量

.box-shadow (@x: 0, @y: 0, @blur: 1px, @color: #000) {

box-shadow: @arguments;

-moz-box-shadow: @arguments;

-webkit-box-shadow: @arguments;

}

.box-shadow(2px, 5px);

将会输出:

box-shadow: 2px 5px 1px #000;

-moz-box-shadow: 2px 5px 1px #000;

-webkit-box-shadow: 2px 5px 1px #000;

 

避免编译

~"样式" 可用单引号或双引号

有时候我们需要输出一些不正确的 CSS 语法或者使用一些 LESS 不认识的专有语法。

 

要输出这样的值我们可以在字符串前加上一个 ~,例如:

.class {

filter: ~"ms:alwaysHasItsOwnSyntax.For.Stuff()";

}

这叫作“避免编译”,输出结果为:

 

.class {

filter: ms:alwaysHasItsOwnSyntax.For.Stuff();

}

 

作用域

LESS 中的作用域跟其他编程语言非常类似,首先会从本地查找变量或者混合模块,如果没找到的话会去父级作用域中查找,直到找到为止。

@var: red;

#page {

@var: white;

#header {

color: @var; // white

}

}

#footer {

color: @var; // red

}

 

!important关键字

 

调用时在混合后面加上!important关键字表示将混合带来的所有属性标记为!important:

 

.mixin (@a: 0) {

border: @a;

boxer: @a;

}

.unimportant {

.mixin(1);

}

.important {

.mixin(2) !important;

}

编译成:

 

.unimportant {

border: 1;

boxer: 1;

}

.important {

border: 2 !important;

boxer: 2 !important;

}

相关文章
|
运维 开发者 Python
《Python 脚本速查手册》电子版下载
Python 不仅是运维工程师的利器,也是众多运维工具的好伙伴,但现在现实生活中很多开发者却在语法编写上犯了难。本书详解了运维工程师如何用Python打造工具,在有限的时间内写出优雅与实用兼并的脚本。通过阅读本书,读者可以学习到Click语法速查、Python常用运维模块、Python运维脚本案例。掌握了这些运用Python开发的技能,开发者们可以在更短的实践内更快速的使用Python处理事物。
124 0
《Python 脚本速查手册》电子版下载
|
XML 前端开发 数据安全/隐私保护
基础知识 - 常用正则表达式最强整理(速查手册)
基础知识 - 常用正则表达式最强整理(速查手册)
128 0
基础知识 - 常用正则表达式最强整理(速查手册)
|
前端开发 JavaScript Java
超好用的前端学习速查手册分享
虽然之前学习过html、css、js,以及bootstrap与jQuery的相关知识,但是一直没有系统的串起来。最新迷上了前端开发的内容,每天总要找几个例子学着做一下。编程的学习没有捷径,能力都是一行行代码敲出来的。 但是在学习过程中也会遇到一些问题,比如有些标签、或者样式内容忘记了,该怎么查询呢?今天专门给大家分享一下最近搜集的好东西。
219 0
|
资源调度 JavaScript 前端开发
Markdown 语法速查笔记
Markdown 语法速查笔记
201 0
Markdown 语法速查笔记
|
人工智能 运维 Cloud Native
免费下载!运维工程师的《Python脚本速查手册》
Python 对于运维工程师来说,是一门必须掌握的技能。Python 也是众多运维工具的好伙伴,Ansible、SaltStack 等技术,都是基于 Python 写就的,掌握了 Python ,你能给节省更多的时间,去做更重要的事情。
免费下载!运维工程师的《Python脚本速查手册》
|
运维 Cloud Native Linux
免费下载!运维工程师的Ansible速查手册
Ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
免费下载!运维工程师的Ansible速查手册
|
XML 前端开发 数据安全/隐私保护
常用正则表达式最强整理(速查手册)
非零的负整数:^\-[1-9][]0-9"*$ 或 ^-[1-9]\d*$ 非负整数:^\d+$ 或 ^[1-9]\d*|0$ 非正整数:^-[1-9]\d*|0$ 或 ^((-\d+)|(0+))$ 非负浮点数:^\d+(\.\d+)?$ 或 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ 非正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 或 ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ 正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 或 ^(([0-9]
|
Java Linux Shell
linux命令速查
1、gedit:cannot open display derek@vbox:/home$ sudo geditInvalid MIT-MAGIC-COOKIE-1 keyUnable to init server: Could not connect: Connection refused (ge...
1378 0

相关实验场景

更多