less

作者: 周紫一 | 来源:发表于2020-01-05 21:11 被阅读0次

    就三个关键点 “@”,“&”,“.”
    “@”,关于变量的定义以及使用
    “&”,关于层次结构
    “.” ,混合

    @

    常用的是,将变量作为属性值来使用

    “&”,“.” , “:extend(.XXXX)”

    &,表示层次的连接,也就是消除上下级css写法中的空格

    . 注意width-height-color这个混合的写法:
    1,定义以及调用的时候都要加上括号的 “()”
    2,参数还可以制定默认值 比如@color:white

    :extend(.XXXX)
    继承的定义是不需要加括号的,但是前面的点"." 始终是需要的
    并且,extend 前面的":"是没有空格的,extend后面紧跟着括号

    //mixin.less中的代码
    .width-height-color(@width, @height, @color:white){
        width: @width;
        height: @height;
        background-color: @color;
    }
    
    .inner-border{
        border: red, solid 3px;
        border-radius: 10px;
    }
    
    
    
    //01.less中的代码
    *{
        margin: 0;
        padding: 0;
    }
    @import "mixin.less";
    .wrap{
        margin: auto;
        .width-height-color(200px, 200px);
        border: solid 1px red; 
        .inner:extend(.inner-border){
    
            &:hover{
                background-color: black !important;
            }
            &:nth-child(1){
                .width-height-color(100px, 100px, red)
            }
            &:nth-child(2){
                .width-height-color(50px, 50px, yellow)
            }
            
        }
        
    }
    
    

    编译后的文件

    * {
      margin: 0;
      padding: 0;
    }
    .inner-border,
    .wrap .inner,
    .wrap .inner:hover,
    .wrap .inner:nth-child(1),
    .wrap .inner:nth-child(2) {
      border: red, solid 3px;
      border-radius: 10px;
    }
    .wrap {
      margin: auto;
      width: 200px;
      height: 200px;
      background-color: #ffffff;
      border: solid 1px red;
    }
    .wrap .inner:hover {
      background-color: black !important;
    }
    .wrap .inner:nth-child(1) {
      width: 100px;
      height: 100px;
      background-color: #ff0000;
    }
    .wrap .inner:nth-child(2) {
      width: 50px;
      height: 50px;
      background-color: #ffff00;
    }
    
    

    效果:


    相关文章

      网友评论

          本文标题:less

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