变量基本上是每个语言脚本上都会涉及的一个小小知识点,是学好语言脚本的必经之路。LESS中也可以设置变量,然后通过变量可以改变整个网站的设计风格。良好的掌握LESS中变量的用法,是LESS的基础。

变量语法

使用方法就是在“@”后添加变量名称然后与变量值用冒号“:”链接。如下

LESS代码

@width : 300px;

.meng {
width: @width;
}

编译后的CSS代码

.meng {
width: 300px;
}

变量的作用域

如果对同一个变量定义两次的话,在当前作用域中最后一次定义的将被使用。这与CSS的机制类似,最后一次定义的值会成为这个属性的值。若定义在嵌套之中,那么这个变量就只能服务于这个嵌套之内的属性了。变量也是没有顺序可言的,只要页面里有,都会按顺序覆盖,按顺序加载。如下

LESS代码

@width : 1px;

.meng {
@width : 2px;
.long {
@width : 9000px;
width:@width;
@width : 22px;
}
width: @width;
}

编译后的CSS代码

.meng {
width: 2px;
}
.meng .long {
width: 22px;
}

下面这段例子也是有效的。

LESS代码

.long {
width: @w;
@o: 9%;
} @w: @o;
@o: 100%;

编译后的CSS代码

.long {
width: 9%;
}

字符串插值

变量可以用像 @{name} 这样的结构,以类似 ruby 和 php 的方式嵌入到字符串中

LESS代码

@myUrl: "http://blog.csdn.net/lee_magnum";
.meng {
background-image: url("@{myUrl}/images/bg.png");
}

编译后的CSS代码

.meng {
background-image: url("http://blog.csdn.net/lee_magnum/images/bg.png");
}

选择器插值

如果需要在选择器中使用 LESS 变量,只需通过使用和字符串插件一样的 @{selector} 即可。

LESS代码

@Myname: meng1314;
.@{Myname} {
width:1000000000000px;
}

编译后的CSS代码

.meng1314 {
width: 1000000000000px;
}

media query作为变量

如果你希望在media query中使用LESS变量,你可以直接使用普通的变量方式。因为“~”后面的值是不被编译的,所以可以用作media query的参数。小例子如下

LESS代码

@singleQuery: ~"(max-width: 480px)";
@media screen, @singleQuery {
div {
width:2000px;
}
}

编译后的CSS代码

@media screen, (max-width: 480px) {
div {
width: 2000px;
}
}

用一个变量值的变量

在定义变量值时使用其它的变量。

LESS代码

@meng : 5201314px;

@loveDay : meng;

div {
width:@@loveDay;
}

编译后的CSS代码

div {
width: 5201314px;
}

LESS详解之变量(@)就为大家介绍到这里了。这并不是最完善的有关LESS的讲解,也不是最完美的讲解,只是把我学习的笔记和大家分享一下,希望能对大家有所帮助。掌握好LESS详解之变量(@),也是为之后LESS深入学习打好基础。

LESS详解之变量(@)的更多相关文章

  1. 详解js变量、作用域及内存

    详解js变量.作用域及内存 来源:伯乐在线 作者:trigkit4       原文出处: trigkit4    基本类型值有:undefined,NUll,Boolean,Number和Strin ...

  2. C# 数据类型详解以及变量、对象与内存

    学习刘铁猛老师<C#语言入门详解>视频,针对其中重点知识点进行总结. 1.什么是类型? 类型又称为数据类型(Data Type),数据类型在数据结构中的定义是一个值的集合以及定义在这个值集 ...

  3. php引用&符号详解——————给变量起小名

    学习了这篇博客[http://blog.csdn.net/jiedushi/article/details/6428585] php中引用采用的是“写时拷贝”的原理,就是除非发生写操作,指向同一个地址 ...

  4. Python第二天: 变量详解及变量赋值

    目录 什么是变量? 怎么写一个好的变量? 下划线命名法及驼峰命名法 结语 目录 此文章针对刚学Python的小白,若觉得对变量有很好的掌握,可以观看其他的文章 在这里, 我说一下我对变量的简单总结: ...

  5. 详解Python变量在内存中的存储

    这篇文章主要是对python中的数据进行认识,对于很多初学者来讲,其实数据的认识是最重要的,也是最容易出错的.本文结合数据与内存形态讲解python中的数据,内容包括: 引用与对象 可变数据类型与不可 ...

  6. 【 MAKEFILE 编程基础之三】详解 MAKEFILE 变量的定义规则使用!

    本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/gcc-makefile/770.html   ...

  7. 160622、详解JavaScript变量提升

    变量在程序中随处可见.它们是一些始终在相互影响,相互作用的的数据和逻辑.正是这些互动使应用程序活了起来. 在JavaScript中使用变量很重要的一方面就是变量的提升 —— 它决定了一个变量何时可以被 ...

  8. 详解JavaScript变量提升

    变量在程序中随处可见.它们是一些始终在相互影响,相互作用的的数据和逻辑.正是这些互动使应用程序活了起来. 在JavaScript中使用变量很重要的一方面就是变量的提升 —— 它决定了一个变量何时可以被 ...

  9. 详解js变量声明提升

    之前一直觉会认为javascript代码执行是由上到下一行行执行的.自从看了<你不知道的JS>后发现这个观点并不完全正确.先来给大家举一个书本上的的例子: var a='hello wor ...

随机推荐

  1. wikioi 1048 石子归并

    dp[i][j]=min(dp[i][j],dp[i][k],dp[k+1][j]+sum[i][j]); 表示i-j的最小合并代价. #include <iostream> #inclu ...

  2. [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See https://www.chromestatus.com/features/5093566007214080

    相信如果用谷歌浏览器做移动端页面的时候 用touch事件的时候应该遇到过这个东东吧 documet.addEventListener("touchstart",function() ...

  3. 利用.bat文件快速设置IE代理与清除IE代理

    http://www.duoluodeyu.com/2009/17.html 设置IE代理.bat文件原文:将下面红色文字复制保存为.bat文件即可. 复制后将蓝色字体部分改成你要设置的代理服务器地址 ...

  4. datagrid在MVC中的运用06-固定连续列

    本文主要体验datagrid的frozenColumns属性. □ frozenColumns效果: 在frozenColumns的列将保持不动,而其他列横向滚动. □ frozenColumns效果 ...

  5. 1. python 字符串简介与常用函数

    1. python中的字符串简介与常用函数 在python中,字符串变成了一个强大的处理工具集,他是不可变的,也就是说字符串包含字符与字符的顺序,他不可以原处修改 字符串是我们后面需要学习的稍大一点的 ...

  6. pytest文档16-用例a失败,跳过测试用例b和c并标记失败xfail

    前言 当用例a失败的时候,如果用例b和用例c都是依赖于第一个用例的结果,那可以直接跳过用例b和c的测试,直接给他标记失败xfail 用到的场景,登录是第一个用例,登录之后的操作b是第二个用例,登录之后 ...

  7. interlliJ idea 不识别文件类型的解决方式

    idea 支持非常多种文件类型.然而总有想不到. 近期开发jenkins 插件,jenkins 插件的页面开发大多用jelly 如何让idea识别jelly呢? ctrl+alt+s 快捷键打开配置页 ...

  8. 计算一元一次方程Y=kX+b

    开发过程中用不到一元一次方程吗?非也,iOS开发中经常会遇到根据某个ScrollView动态偏移量的值来实时设置一个View的透明度,你敢说你不用一元一次方程你能搞定? 想把一个动画效果做好,经常会遇 ...

  9. flink和spark stream等框架的对比

    参考这篇文章: https://www.sohu.com/a/196257023_470008 我们当时的目标就是要设计一款低延迟.exactly once.流和批统一的,能够支撑足够大体量的复杂计算 ...

  10. 【PAT Advanced Level】1011. World Cup Betting (20)

    简单模拟题,遍历一遍即可.考察输入输出. #include <iostream> #include <string> #include <stdio.h> #inc ...