• less


    注释

    以//开头的注释不会被编译到CSS文件中

    被/**/包裹的注释会被编译到CSS文件

    变量

    使用@来声明一个变量:属性值 @color:gray;属性名 @m:margin;选择器 @selector:#box

    • 作为普通属性值来使用:直接使用@color
    • 作为选择器和属性名:@{selector}/@{m}的形式(不常用,了解就好)
    • 变量延迟加载

    延迟加载是当一个作用域的代码全部解析完,才去加载@var

    .class{
     @var:1
     m:@var //3
     @var:3
    }

    嵌套规则

    • 基本嵌套规则
    • &的使用

    &表示上一级选择器,可用于伪元素

    若想表示 .box:hover,直接将:hover嵌套于.box得到的CSS为.box :hover(有空格)

    正确写法:

    .box{
      &:hover{}
    }

    混合

    将一系列属性抽取出来,可在任意元素中调用;

    1. 普通混合 会在CSS中输出

    .base{
      display:absolute;
      100px;
      height:100px;
    }//会在编译后的CSS中出现
    .box1{
      .base;
    }
    .box2{
      .base;
    }

    2. 不输出的混合“()” 不会存在于CSS中

    .base(){
      display:absolute;
      width:100px;
      height:100px;
    }//不会在编译后的CSS中出现
    .box1{
      .base;
    }
    .box2{
      .base;
    }

    3. 带参数的混合

    • 可设置默认值
    • 当形参与实参个数不一致是,可使用命名参数

    LESS文件

    .base(@w:50px,@h:50px){//默认值@w: 50 @h: 50
      display: absolute;
      width: @w;
      height: @h;
    }
    .box1{
      .base(100px,100px);
    }
    //为传参,使用默认值
    .box2{
      .base();
    }
    //命名参数
    .box3{
      .base(@w:200px);
    }

    CSS文件

    .box1{
      width:100px;
      height:100px;
    }
    .box2{
      width:50px;
      height:50px;
    }

    4. 模式匹配

    LESS文件

    .pos(r){
      display: relative;  
    }
    .pos(a){
      display: absolute;  
    }
    .pos(f){
      display: fix;  
    }
    .pos(@_){
      width: 100px;
      height: 80px;  
    }
    .box1{
      .pos(r); 
      .box2{
         .pos(a);
      }   
    }

    CSS文件

    .box1{
      width: 100px;
      height: 80px;
      display: relative;    
    }
    .box1 .box2{
      width: 100px;
      height: 80px;
      display: absolute;    
    }

    运算

    不需要都带单位,有一个带了即可

    100px + 10 =>110px

  • 相关阅读:
    N25_复杂链表的复制
    N24_二叉树中和为某一路径
    N23_判断是否为二叉搜索树的后序遍历序列
    N22_从上到下打印二叉树
    win7桌面小工具已停止工作解决办法
    C3P0数据库连接池使用
    js中的页面跳转
    怎么用js代码禁止浏览器的前进与后退?
    怎么在 Dos 下运行 PHP 和 MySQL 命令
    80端口被system 占用解决方法
  • 原文地址:https://www.cnblogs.com/embrace-ly/p/10746962.html
Copyright © 2020-2023  润新知