美文网首页
CSS处理器--Less

CSS处理器--Less

作者: 废废_siri | 来源:发表于2018-12-28 21:35 被阅读0次

导入less文件到另一个less文件中

@import "lib";
@import "lib.less";      //less扩展名可省略

Less的基本语法

<style type="text/less">
  less代码
</style>

将编写完的less文件(扩展名为.less)进行编译(编译为css文件);编译有两种方式
1.利用考拉工具进行编译
下载地址:http://koala-app.com/
2.利用js文件进行编译<script src="../less/less.min.js"></script>
js代码下载地址:https://cdn.bootcss.com/less.js/3.0.4/less.min.js


注释

//---->不会编译到css文件中
/* */---->会编译到css文件中


变量

属性值有带单位一般放在变量身上
变量的声明:利用@符号来声明变量
变量的的使用类型:
1.作为普通的属性值:@p:person;
2.作为选择器或属性url:@{selector}  @{url}

/*属性值为变量*/
@bg:green;
div{
background-color:@bg;
}

/*属性名为变量,选择器同属性名使用方法一致*/
@w:width;
div{
 @{w}:20px;
}
@url: "../image/xxx/";
div{
background-image:url(@url);
}

--
变量延迟加载
一个{}代表一个作用域,且每个作用域中的变量不会去别的作用域。
一个作用域需要加载完才能确定变量的值。

@var: 0;                
.class {                
@var: 1;                
    .brass {            
      @var: 2;          
      three: @var;  //3 
      @var: 3;          
    }                   
  one: @var;  //1       
}       

避免编译(~)

从语法上让编译器忽略一些操作

eg:
#wrap{width:~"calc(200px + 700px)";}

嵌套(父子结构)

选择器层层嵌套。

ul{
    list-style: none;
    li{
        color: rgb(87, 194, 236);
        &:hover{     //&(返回上一级)
            color: rgb(97, 11, 71);
        }
    }
}

混合

将一个规则集引到另一个规则集中(将规则集拷贝一份到另一个规则集中)

--
普通混合(编译时会输出到目标文件中)

/*需要引入的规则集*/
.center{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

#wrap{
    .center;  /*引入规则集*/
    width: 300px;
    height: 300px;
    border: 1px solid #ccc;
    .inner{
        .center;
        width: 100px;
        height: 100px;
        background-color: rgb(123, 233, 248);
    }
}

--
不带输出的混合(编译时不会输出到目标文件中)
在普通混合模式下加一个()

/*需要引入的规则集*/
.center(){
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

#wrap{
    .center();  /*引入规则集*/
    width: 300px;
    height: 300px;
    border: 1px solid #ccc;
    .inner{
        .center();
        width: 100px;
        height: 100px;
        background-color: rgb(123, 233, 248);
    }
}

--
带参数的混合

/*需要引入的规则集*/
@w:width
@h:height
.center(@w,@h){
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width:@w
    height:@h;
}

#wrap{
    .center(300px,300px);  /*引入规则集*/
    /*width: 300px;
    height: 300px;*/
    border: 1px solid #ccc;
    .inner{
        .center();
        width: 100px;
        height: 100px;
        background-color: rgb(123, 233, 248);
    }
}

除此之外还有:带参数并且有默认值的混合,命名参数,匹配模式,arguments变量,这里不再赘述。


继承

继承是对选择器的组合,而不是对样式集的复制

nav ul { 
&:extend(.inline); 
background: blue;
 }

循环

less本身没有循环的语法是通过递归来构建循环

.test(@n) when(@n > 0){     
    .test(@n - 1);          
    .box{               
        width: 100px * @n;  
    }                   
}                       

.test(12);  

相关文章

  • Sass和Less

    什么是Sass和Less? Sass和Less都属于CSS预处理器。 什么是 CSS 预处理器呢? CSS 预处理...

  • Sass和Less

    saas和less sass和less是什么? Saas和Less都属于css预处理器,css预处理器定义了一种新...

  • less的介绍

    less是什么? less是css云处理器 全局安装less包 查看less是否安装成功 less完全兼容css ...

  • less语法和rem媒体查询的使用

    常见CSS预处理器:Less / SASS / Stylus等。 Less预处理器:使用CSS语法,可以做一些逻辑...

  • 为什么选择Sass而不是Less?

    什么是Sass和Less? Sass和Less都是属于CSS的预处理器,那什么是预处理器呢? CSS预处理器定义了...

  • Less学习笔记

    什么是less less就是一门css预处理器,使我们可以以一种更高效的方式编写css 怎么使用less 在vs ...

  • CSS预处理器之less0731

    CSS预处理器之less 1.基础内容 1.1什么是CSS预处理器? CSS 预处理器就是用某一种语言用来为 CS...

  • Sass使用总结

    一种css预处理器,将css由描述语言转为编程语言,然后再编译成css。类似的还有less、stylus,less...

  • Less极简教程

    Less Less是一种动态样式语言,属于css预处理器的范畴,它扩展了 CSS 语言,增加了变量、Mixin、函...

  • 前端技能

    css (flex布局 移动端自适应适配 css3动画 css预处理器less/sass) js (re...

网友评论

      本文标题:CSS处理器--Less

      本文链接:https://www.haomeiwen.com/subject/zkoelqtx.html