less学习笔记

本文是关于Less预处理器的学习笔记,详细介绍了Less的注释、变量与运算、作用域、混合功能(包括带参数的混合和默认值)、模块引入以及变量的延迟加载特性。通过这些内容,读者可以更好地掌握Less在CSS开发中的高效应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.less的注释

  1. // 嵌套语法 只想给开发人员看到得注释
  2. /包裹注释 会被编译到css文件中/

2.变量/及变量运算

@width:300px;
@color:blue;
@height:@width + 100px;

3.作用域/块级作用域

 @size:10px;
 body{
     background-color:#ccc;
     @size:20px;
     .wrapper{
         width:@width;
         height:@height;
         border:1px solid #000;
         @size:30px;
         .box{
             background-color: @color;
             li{
                 @size:40px;
                 font-size:@size;
                 width:80%;
                 height:20px;
                 background-color:#fff;
                 border:1px solid #000;
                 list-style: none;
                 @size:5px;
                 // 变量&符号
                 &:hover{
                     background-color:#000;
                 }
             }
             // li:hover{
             // }
         }
     }
 }

4.less的混合(将相同样式抽出)

 .border{
     border-top:2px solid #000;
     border-bottom:2px solid red;
 }

 body{
     background-color:#ccc;
     .wrapper{
         margin:50px auto;
         width:500px;
         height:500px;
         .border;
         .box{
             margin-top:30px;
             width:200px;
             height: 200px;
             background-color: @color;
             .border;
             li{
                 width:80%;
                 height:20px;
                 background-color:#fff;
                 border:1px solid #000;
                 list-style: none;
             }
         }
     }
 }

5.带参数的混合

 .border(@w,@color){
     border:@w solid @color;
 }
 body{
     background-color:#ccc;
     .wrapper{
         margin:50px auto;
         width:500px;
         height:500px;
         .border(5px,red);
         .box{
             margin-top:30px;
             width:200px;
             height: 200px;
             background-color: @color;
             .border(5px,pink);
             li{
                 width:80%;
                 height:20px;
                 background-color:#fff;
                 border:1px solid #000;
                 list-style: none;
             }
         }
     }
 }

6.带默认值的参数(不传值得时候取默认值)

.border(@w:1px,@color:#000){
    border:@w solid @color;
}
body{
    background-color:#ccc;
    .wrapper{
        margin:50px auto;
        width:500px;
        height:500px;
        .border(5px,red);
        .box{
            margin-top:30px;
            width:200px;
            height: 200px;
            background-color: @color;
            .border();
            li{
                width:80%;
                height:20px;
                background-color:#fff;
                border:1px solid #000;
                list-style: none;
            }
        }
    }
}

7.在less中引入模块

@import './triangle.less';
.wrapper{
    width:400px;
    height:400px;
    margin:50px auto;
    //
    .box{
        .triangleTop(50px,blue) 
    }
}

8.运算

.box{
    width:(100+100px);
    height:300px;
    border:3px solid #000;
}

9.变量的延迟加载

延迟加载:变量是延迟加载的,在使用前不一定要预先说明。 意思是指:在前面用了这个变量,但没有定义,但可以在后面给他定义出来,不影响输出。

// 如:编译前:                                    编译后:
		div{                                       div {
			width: 100px; 								width: 100px;
			height: 200px;								height: 200px;
			font-size: @size;							font-size: 20px;
			color: @color;								color: #333333;
			}                                      }
		@size: 20px;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值