• Less 入门


    但行好事,末问前程

    CSS 预处理器

    Less、 Sass 、 stylus

    在这里插入图片描述
    Less 官网

    <link rel="stylesheet/less" type="text/css" href="styles.less" />
    
    
    <script src="less.js" type="text/javascript"></script>
    

    Less使用

    嵌套应用

    Less编译工具

    koala官网:www.koala-app.com
    推荐 VScode 编译插件 EASYLess

    Less注释

    以// 开头的注释,不会被编译到Css文件中
    以/* */包裹的注释会被编译到Css文件中

    Less 变量

    注意变量为延迟加载

    1、 普通属性值

    @color: pink ;
    
    
    .inner {
        background : @color  ; 
    } 
    

    2、自行的属性名或选择器名作为变量(不常用)

    在这里插入图片描述
    3、 作为URL
    @{url}

    Less 嵌套规则

    1、 结构层次嵌套
    2、 & 的使用(避免空格)

    Less中的混合 (重要)

    混合就是将一系列属性从一个规则集引入到另一个规则集的方式
    1.普通混合
    2.不带输出的混合
    3.带参数的混合
    4.带参数并且有默认值的混合
    5.带多个参数的混合
    6.命名参数
    7.匹配模式
    8. arguments变量

    带参数并且有默认值的混合
    在这里插入图片描述

    *{
        margin: 0;
        padding: 0;
    }
    .juzhong(@w:100px,@h:100px,@c:pink){
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        margin: auto;
         @w;
        height: @h;
        background: @c;
    }
    #wrap{
        position: relative;
        margin: 0 auto;
         400px;
        height: 600px;
        border: 1px solid;
    }
    
    
    
    #box1{
        .juzhong();
        z-index: 1;
    }
    #box2{
        .juzhong(@h:200px;@c:deeppink;);
    }
     
    

    arguments变量

    鸡肋,实参类似于数组
    在这里插入图片描述
    简化下述参数

    在这里插入图片描述

    Less 继承(重要)

    Less 代码
    在这里插入图片描述

    *{
        margin: 0;
        padding: 0;
    }
    .common:hover{
        background: pink;
    }
    .common{
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        margin: auto;
    }
    .juzhong(@w:100px,@h:100px,@c:pink){
        &:extend(.common all);
         @w;
        height: @h;
        background: @c;
    }
    #wrap{
        position: relative;
        margin: 0 auto;
         400px;
        height: 600px;
        border: 1px solid;
    }
    
    #box1{
        .juzhong();
        z-index: 1;
    }
    #box2{
        .juzhong(@h:200px;@c:deeppink;);
    }
    
    

    编译后CSS 代码

    * {
      margin: 0;
      padding: 0;
    }
    .common:hover,
    #box1:hover,
    #box2:hover {
      background: pink;
    }
    .common,
    #box1,
    #box2 {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      top: 0;
      margin: auto;
    }
    #wrap {
      position: relative;
      margin: 0 auto;
       400px;
      height: 600px;
      border: 1px solid;
    }
    #box1 {
       100px;
      height: 100px;
      background: #ffc0cb;
      z-index: 1;
    }
    #box2 {
       100px;
      height: 200px;
      background: #ff1493;
    }
    
    

    Less 避免编译

    less 语法
    说明: 带上~“ ” 表示不编译内部代码
    calc() 计算方法

    *{
        margin: 0;
        padding: 0;
    }
    #wrap{
        ~"calc(200px + 700px)";
    }
    
    

    编译结果

    css

    * {
      margin: 0;
      padding: 0;
    }
    #wrap {
       calc(200px + 700px);
    }
    
    
  • 相关阅读:

    转:在自己的工具条中使用ArcGIS Engine提供的命令和工具
    配置Subversion Apache TortoiseSVN
    vc++2005移除自定义向导目录
    NetAdvantage2006 For ASP.NET2.0印象
    三天了!今天终于成功安装ArcIMS9.2!
    vss 去除源代码管理
    转:设计模式趣谈
    转一篇:有关项目报告
    演练:使用 Visual Studio Team Test 进行单元测试
  • 原文地址:https://www.cnblogs.com/lzhCreate/p/14300572.html
Copyright © 2020-2023  润新知