LESS

作者: 静候那一米阳光 | 来源:发表于2018-02-13 18:11 被阅读0次

    less

    官网与文档

    简介

    less于css类似于jquery于js

    安装

    # 安装less编译器
    npm install -g less
    # 将less转换为css
    lessc styles.less styles.css 
    

    也可以用koala图形化工具进行操作

    实例

    /* 注释:会被编译 */
    
    // 注释:不会被编译
    
    /* 变量定义 */
    
    @width: 12px;
    .box {
      width: @width;
      .border;
    }
    
    
    /* 混合 */
    
    .border {
      border: 1px solid #000;
    }
    
    .box2 {
      .border_02(100px);
      height: 100px;
    }
    
    
    /* 混合 带参数 */
    
    .box3 {
      .border_02();
      height: 100px;
      .border_radius();
    }
    
    .border_02(@border_width: 10px) {
      border: @border_width solid #000;
    }
    
    .border_radius(@radius: 3px) {
      -webkit-border-radius: @radius;
      -moz-border-radius: @radius;
      border-radius: @radius;
    }
    
    
    /* 匹配模式 */
    
    .triangle(top, @w: 5px, @c: #ccc) {
      border-width: @w;
      border-color: transparent transparent @c transparent;
      border-style: dashed dashed solid dashed;
    }
    
    .triangle(bottom, @w: 5px, @c: #ccc) {
      border-width: @w;
      border-color: @c transparent transparent transparent;
      border-style: solid dashed dashed dashed;
    }
    
    .triangle(@_, @w: 5px, @c: #ccc) {
      width: 0;
      height: 0;
      overflow: hidden;
    }
    
    .graph {
      .triangle(bottom, 5px, #000);
    }
    
    
    /* @arguments */
    
    .border_arg(@w: 3px, @c: red, @s: solid) {
      border: @arguments;
    }
    
    .test-border {
      width: 20px;
      height: 20px;
      .border_arg(1px);
    }
    
    
    /* 嵌套 */
    
    .list {
      ul {
        width: 50px;
        overflow: hidden;
      }
      a {
        color: #f00;
        &:hover {
          color: #f00+100;
        }
      }
    }
    
    
    /* 避免编译 */
    
    .test-compile {
      width: ~'calc(300px-30px)';
    }
    
    
    /* !important */
    
    .test-imp {
      .border() !important;
    }
    

    编译结果

    /* 注释:会被编译 */
    /* 变量定义 */
    .box {
      width: 12px;
      border: 1px solid #000;
    }
    /* 混合 */
    .border {
      border: 1px solid #000;
    }
    .box2 {
      border: 100px solid #000000;
      height: 100px;
    }
    /* 混合 带参数 */
    .box3 {
      border: 10px solid #000000;
      height: 100px;
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
      border-radius: 3px;
    }
    /* 匹配模式 */
    .graph {
      border-width: 5px;
      border-color: #000000 transparent transparent transparent;
      border-style: solid dashed dashed dashed;
      width: 0;
      height: 0;
      overflow: hidden;
    }
    /* @arguments */
    .test-border {
      width: 20px;
      height: 20px;
      border: 1px #ff0000 solid;
    }
    /* 嵌套 */
    .list ul {
      width: 50px;
      overflow: hidden;
    }
    .list a {
      color: #f00;
    }
    .list a:hover {
      color: #ff6464;
    }
    /* 避免编译 */
    .test-compile {
      width: calc(300px-30px);
    }
    /* !important */
    .test-imp {
      border: 1px solid #000 !important;
    }
    

    导入文件

    # 导入 less
    @import "lib";
    # 导入 css 
    @important "a.css";
    # 导入 css 并整合到当前文件
    @important (less)"a.css";
    

    文章中实例

    资料:慕课网 less即学即用

    相关文章

      网友评论

          本文标题:LESS

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