一、普通变量

//--普通变量--less
@fontColor: #000000;
body{ color:@fontColor; } //--输出--css
body{ color:#000000; }

二、选择器变量

//--选择器--less
@selector: main;
.@{selector}{color:@fontColor; } //--输出--css
.main {color: #000000;}

三、地址Url变量

//--地址Url--less
@Website: "/Images/";
.main{background: url("@{Website}A.jpg"); } //--输出--css
.mian{ background: url("/Images/A.jpg"); }

四、属性变量

//--属性--less
@attr: height;
.main{ @{attr}: 200px; line-@{attr}:20px; } //--输出--css
.mian{ height: 200px;line-height: 20px; }

五、变量名变量

//--变量名-less
@varName:"mainWidth";
@mainWidth:500px;
.main{ width:@@varName;} //--输出--css
.main {width: 500px;} //--变量名延伸1-less
@varName:"mainWidth";
@mainWidth:@width;
@width:500px;
.main{ width:@@varName;} //--输出--css
.main {width: 500px;} //--变量名延伸2-less
@varName:"mainWidth";
@mainWidth:@width;
@width:500px;
.main{ width:@@varName;@width:200px; } //--输出--css
.main {width: 200px; }

以上延伸说明,less的变量采用了懒加载方式,在文档中也有说明:

1、变量名是延迟加载的,不必在使用之前声明
2、当定义变量两次时,将使用变量的最后一个定义,从当前范围向上搜索。这类似于css本身,其中定义中的最后一个属性用于确定值。

六、默认变量

//--默认变量-less
@base-color: green;
@drak-color: darken(@base-color,10%);
.main { background-color: @drak-color; } //--输出--css
.main { background-color: #004d00; } //--默认变量-less
@base-color: green;
@drak-color: darken(@base-color,10%);
.main { background-color: @drak-color; @base-color: red;} //--输出--css
.main { background-color: #cc0000; }

其实这个和上面的变量名延伸是一致的,不过是覆盖了而已。

关联实操使用:

//--变量--less

 //--普通变量
@fontColor: #000000; //--选择器
@selector: main; //--地址Url
@Website: "/Images/"; //--属性
@attr: height; //--变量名
@varName: "mainWidth";
@mainWidth: @width/16rem;
@width: 500; //--默认变量
@base-color: green;
@drak-color: darken(@base-color,10%); .@{selector} {
width: @@varName;
@width:;
@{attr}: 200px;
line-@{attr}: 20px;
color: @fontColor;
font-size: 16px;
background: url("@{Website}A.jpg");
background-color: @drak-color;
@base-color: red;
} //--输出--css
.main {
width: 62.5rem;
height: 200px;
line-height: 20px;
color: #000000;
font-size: 16px;
background: url("/Images/A.jpg");
background-color: #cc0000;
}

作者:leona

原文链接:http://www.cnblogs.com/leona-d/p/6296162.html

版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接

Less-css基础之变量学习的更多相关文章

  1. HTML&CSS基础学习笔记—创建列表

    创建一张表格 很多时候我们需要在网页上展示一些数据,使用表格可以很好的来展示数据. 在HTML中<table>标签定义 表格. <table> </table> 添 ...

  2. 〖前端开发〗HTML/CSS基础知识学习笔记

    经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...

  3. 李洪强和你一起学习前端之(3)Css基础和选择器

    大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...

  4. Web学习篇之---css基础知识(一)

    css基础知识(一) 1.css样式: 载入css样式有下面四种: 1).外部样式 2).内部样式 3).行内样式 4).导入样式 <link href="layout.css&quo ...

  5. 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句

    salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...

  6. 前端学习(九):CSS基础

    进击のpython ***** 前端学习--CSS基础 CSS的样式可以写在哪呢?其实CSS的样式插入式十分灵活的 按照插入的形势来看,可以分为三种情况 而接下来就对这三种情况进行简单的讨论 内嵌式 ...

  7. 学习笔记(一) HTML+CSS基础课程

    这个周把慕课网的<HTML+CSS基础课程>课程学完,内容都是非常非常基础的,不过还是学到了几个小知识点,记下来先. <a>超链接发送邮件 直接上把他的图片给挪过来了,我就不打 ...

  8. 从零开始学习前端开发 — 2、CSS基础

    一.CSS简介  1.CSS是什么 CSS是Cascading Style Sheets的简称,中文称为层叠样式表.特点:实现了表现与结构相分离 2.css基础语法 css是由选择符和声明两大部分组成 ...

  9. css 基础教程学习

    css基础语法 css语法 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. 选择器通常是您需要改变样式的 HTML 元素. 每条声明由一个属性和一个值组成. 如果要定义不止一个声明,则 ...

随机推荐

  1. Entity Framework Code First使用者的福音 --- EF Power Tool使用记之一(转载)

    好像蛮长时间没有新文章带给大家了.前几天出差再加上忙着公司里的活儿,几乎都没时间上博客园了.今天正好有些时间,为大家简单介绍EF产品组新发布的一个牛逼的小工具——EF Power Tool(翻译的话, ...

  2. Mongodb更新数组$pull修饰符

    http://blog.csdn.net/yaomingyang/article/details/78701643 一.$pull修饰符会删除掉数组中符合条件的元素,使用的格式是: { $pull:  ...

  3. LFCS 系列第八讲:管理用户和用户组、文件权限和属性以及启用账户 sudo 访问权限

    由于 Linux 是一个多用户的操作系统(允许多个用户通过不同主机或者终端访问一个独立系统),因此你需要知道如何才能有效地管理用户:如何添加.编辑.禁用和删除用户账户,并赋予他们足以完成自身任务的必要 ...

  4. 使用GitHub做个人博客

    前言 用过市面上主流的blog程序,也用Django自己写过开源的博客程序July(170+Star),慢慢的发现没太多精力去打理维护,干脆直接放GitHub当静态页面算了,之前也用过Hexo.jek ...

  5. 当一个线程进入一个对象的synchronized方法A之后,其他线程是否可进入此对象的synchronized方法B?

    给出答案: 是不能的,其他线程只能访问该对象的非同步方法,同步方法则不能进入; 因为非静态方法上的synchronized修饰符要求执行方法时要获得对象的锁,如果已经进入A方法,说明对象锁已经被取

  6. linux学习笔记30--网络命令ifconfig

    许多windows非常熟悉ipconfig命令行工具,它被用来获取网络接口配置信息并对此进行修改.Linux系统拥有一个类似的工具,也就是ifconfig(interfaces config).通常需 ...

  7. Spring的核心机制——依赖注入(Dependency Inject)

    Spring不仅提供对象,还提供对象的属性值,而不是由使用该对象的程序所提供的. Java应用是由一些相互协作的对象所组成的,在Spring中这种相互协作的关系就叫依赖关系. 如果A组件调用了B组件的 ...

  8. 爬虫 (6)- Scrapy 实战案例 - 爬取不锈钢的相关钢卷信息

    超详细创建流程及思路 一. 新建项目 1.创建文件夹,然后在对应文件夹创建一个新的python项目 2.点击Terminal命令行窗口,运行下面的命令创建scrapy项目 scrapy startpr ...

  9. (转)java位运算

    转自:http://aijuans.iteye.com/blog/1850655 Java 位运算(移位.位与.或.异或.非)   public class Test { public static ...

  10. 【Python】setup-转载

    python+PyQT+Eric安装配置 python+PyQT+Eric安装配置 作者: loker 博客: http://www.cnblogs.com/lhj588/ 时间: 2011年10月3 ...