好文章链接:30分钟学会less

自己总结一下这篇文章中的几个关键字:变量、混合、函数、嵌套、@import

下面贴上自己照着上面写的一些代码:

<template>
<div class="main">
<div class="container">1</div>
<div class="container2">2</div>
<div id="container2">3</div>
<div id="header">函数</div>
<button class="button">函数</button>
<div class="sectionBox">函数样式多个参数用分号隔开,且可以为每个参数设置默认值</div>
<div class="class1">函数有默认值,调用时通过变量名称,而不是位置</div>
<div class="class2">函数参数有内置变量@arguments,相当于js函数中的arguments</div>
<div class="parentBox">
我是父元素
<div class="child">我是子元素</div>
</div>
<div class="one">我是one元素,后面是我的伪类</div>
</div>
</template> <script>
export default { }
</script> <style lang="less">
@color: pink;//样式变量
@mainColor:green;//样式变量
@main:main;//类名变量
.whbm(){//用于嵌套
width: auto;
height: 50px;
background-color: @color;
margin-bottom: 5px;
float:left;
} .@{main}{//用变量当类名//不能会用#
background-color: @mainColor;
position:absolute;
top:0;
left:0;
bottom:0;
width:100%;
}
.container{
.whbm();//和.border_radius效果一样
}
.container2{
.whbm();//混合
}
#container2{
.whbm();//混合
} // fun_less
.border-radius(@radius) {//函数样式用于嵌套 @radius是一个参数变量
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
#header{
.whbm();
.border-radius(20px);
}
.button{
.whbm();
.border-radius(50%);
}
// 函数的参数设置默认值:
.border-radius2(@radius: 5px) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
// 函数有多个参数时用分号隔开
.mixin(@color:orange; @padding) {
color: @color;
padding: @padding;
}
// 函数如果没有参数,在转译成 css 时就不会被打印出来,详见上面混合中的示例
.wrap() {
text-wrap: wrap;
} .sectionBox{
.whbm();
.border-radius(10px);
.mixin(orange;10px);
} // 函数参数如果有默认,调用时就是通过变量名称,而不是位置
.cmp(@color: black; @margin: 10px; @padding: 20px 0;) {
color: @color;
margin: @margin;
padding: @padding;
}
.class1 {
.whbm();
.cmp(@margin: 20px;@padding:10px 0; @color: #33acfe);
} // 函数参数有个内置变量 @arguments,相当于 js 中的 arguments
.box-shadow(@x: 10px; @y: 10px; @blur: 1px; @color: #000) {
-webkit-box-shadow: @arguments;
-moz-box-shadow: @arguments;
box-shadow: @arguments;
}
.class2{
.whbm();
.box-shadow();
}
// 函数名允许相同,但参数不同,类似于 java 中多态的概念
.mixin1(@color: black) { };
.mixin1(@color: black; @margin: 10px) { }; // 父子元素的写法 (可以嵌套)
.parentBox{
float:left;
width:200px;
height:100px;
background:orangered;
color:black;
position: relative;
.child{
background:blueviolet;
width:100%;
height:30px;
};
&:after{//伪类元素的写法 //用&号代替父元素
content:"我是父元素的伪类元素";
position: absolute;
top:0;
right:-100px;
width:100px;
height:100px;
background:chocolate;
}
} // 神奇 @import (从外部引入less文件,像引入模块一样)
//借机说一下@import引入样式,与link引入样式的区别,link引入样式,先加载css再加载html,不会出现HTML混乱,而@import引入样式,先加载html后加载样式,会引起html先加载时,样式混乱。
// 文件后缀名
// 在less中,@import声明会根据引入的文件的后缀进行相应的解析。 // 如果文件是.css的后缀,该文件将会被解析成css样式,然后@import语句会保持原样。
// 如果文件是其他类型的后缀的话,文件会被解析成less文件,然后进行导入。
// 如果文件没有任何后缀,将会为文件添加.less的后缀,并且当成less文件进行导入。 @import "../less/one";//不指定后缀时,已less格式引入
@import url("../less/two.less");//我会覆盖one的样式 这种带url的语法和不带url的语法无差别 // less提供了数种后缀给css的@import语句,可以更加灵活的去使用外部文件。
// 语法:@import(keyword)"filename";
// 下面是已经实现了的import准则:
// reference:使用less文件到时不将其输出。
// inline:将源文件包含进来但是不进行处理。
// less:无论文件后缀是什么类型,都当成less格式的文件。
// css:无论文件后缀是什么类型,都当成css格式的文件。
// once:只引入文件一次(为默认行为)。
// multiple:引入文件数次。
// optional:当文件没找到时会继续编译。
@import (optional, reference) "foo.less"; </style>

less的使用(好文章)的更多相关文章

  1. C# 文章导航

    1. C#相关文章 1.1 C# 基础(一) 访问修饰符.ref与out.标志枚举等等 1.2 C# 基础(二) 类与接口 1.3 C# DateTime日期格式化 1.4 C# DateTime与时 ...

  2. 分布式系列文章——Paxos算法原理与推导

    Paxos算法在分布式领域具有非常重要的地位.但是Paxos算法有两个比较明显的缺点:1.难以理解 2.工程实现更难. 网上有很多讲解Paxos算法的文章,但是质量参差不齐.看了很多关于Paxos的资 ...

  3. 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录

    ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成: ...

  4. 有朋友问了数据库ID不连续,怎么获取上一篇和下一篇的文章?(不是所有情况都适用)

    呃 (⊙o⊙)…,逆天好久没写SQL了,EF用的时间长了,SQL都不怎么熟悉了......[SQL水平比较菜,大牛勿喷] 方法很多种,说个最常见的处理 因为id是自增长的,所以一般情况下下一篇文章的I ...

  5. iOS系列文章

    本博客全为原创,如果借鉴了其他文章会在博文的下面进行说明.欢迎转载,但要在文章中给出原文链接,谢谢. 有链接的说明已经发布,没有链接的说明还没有发布. 并不是所有的博文都在这里罗列,有兴趣的可以看博客 ...

  6. 【NLP】蓦然回首:谈谈学习模型的评估系列文章(一)

    统计角度窥视模型概念 作者:白宁超 2016年7月18日17:18:43 摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量. ...

  7. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)

    初识马尔可夫和马尔可夫链 作者:白宁超 2016年7月10日20:34:20 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处 ...

  8. 在知乎上看到 Web Socket这篇文章讲得确实挺好,从头看到尾都非常形象生动,一口气看完,没有半点模糊,非常不错

    在知乎上看到这篇文章讲得确实挺好,从头看到尾都非常形象生动,一口气看完,没有半点模糊,非常不错,所以推荐给大家,非常值得一读. 作者:Ovear链接:https://www.zhihu.com/que ...

  9. 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第十二节)

    好的,那么在上一节中呢,评论功能的后台已经写好了,这一节,先把这部分后台代码和前台对接一下. 1.评论功能实现 我们修改一下保存评论按钮的点击事件,用jQuery的方式获取文本框中的值,然后通过aja ...

  10. 【微信小程序开发•系列文章六】生命周期和路由

    这篇文章理论的知识比较多一些,都是个人观点,描述有失妥当的地方希望读者指出. [微信小程序开发•系列文章一]入门 [微信小程序开发•系列文章二]视图层 [微信小程序开发•系列文章三]数据层 [微信小程 ...

随机推荐

  1. Windows7下PHP5.6.19+Apache2.4.18+MySql5.7环境配置

    此安装参考了网上各方资料,最终整理的内容为本次安装涉及的部分. 一.准备安装材料: 1.从http://windows.php.net/download/ 下载5.6.19 线程安全版(使用apach ...

  2. rsync3.1.3的编译安装和常用操作

    .rsync的编译安装 .tar.gz cd rsync- ./configure --prefix=/usr/local/rsync- --disable-ipv6 .rsync的配置文件: [ro ...

  3. [转]PuTTY字体颜色设置

    转载于 https://blog.csdn.net/cyd_shuihan/article/details/77836290 用putty登录Linux,默认配色方案看不清,我们可以自己设置新的字体大 ...

  4. iOS开发之用到的几种锁整理

    1. iOS中的互斥锁 在编程中,引入对象互斥锁的概念,来保证共享数据操作的完整性.每个对象都对应于一个可称为“互斥锁”的标记,这个标记用来保证在任一时刻,只能有一个线程访问对象. 1.1 @sync ...

  5. 创建免费的证书,实现网站HTTPS

    使用Certbot来实现HTTPS,这边也就考虑采用Cerbot来实现下 配置Certbot 证书 Certbot 的官方网站是 https://certbot.eff.org/ ,打开官网选择的 w ...

  6. CSS使用小记

    1. 省略显示 max-width: 200px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; 固定宽度,nowra ...

  7. Postgresql/Greenplum中将数字转换为字符串TO_CHAR函数前面会多出一个空格

    -- 问题1..Postgresql中将数字转换为字符串前面多出一个空格. SELECT TO_CHAR(, '); -- 解决1.使用如下,参数二前面加上fm就可以去掉空格了,如下: SELECT ...

  8. MVC中 jquery validate 不用submit方式验证表单或单个元素

    <script src="/Scripts/jquery-1.4.4.js"></script> <script src="/Scripts ...

  9. 一起学Python——数据类型详解

    和学习其他编程语言一样,首先要了解一门语言的数据类型. Python的数据类型有整型.浮点型.字符串.布尔型.日期时间类型.list列表.set集合.tuple元组.dict词典等. 1.整型 就是数 ...

  10. rpm 安装、卸载软件命令 ——以nginx为例

    1.安装 命令:rpm    -ivh    nginx-1.14.0-1.el7_4.ngx.x86_64.rpm 2.查看安装结果 命令:rpm   -qa  | grep  nginx 3.升级 ...