简述css预处理语言less

简述less

less的简介

css是一门非程序式语言,没有变量,函数,scope(作用域)等概念,其冗余度高,不便于维护,为了解决这些问题我们引入了一门预处理语言less.
less(leaner style sheets)是一门css的扩展语言,也可称为css预处理器,在保留原css的基础上加入了变量,函数,运算,Mixin(混入),降低了维护成本,增加了书写的简洁度。

less安装

主要通过nodejs安装

  1. 安装nodejs nodejs下载地址

  2. 检查nodejs是否安装成功,利用win+r打开终端输入cmd命定,在终端中输入node -v
    在这里插入图片描述

  3. 基于nodejs安装less,使用win+r打开终端输入cmd命令,在终端中输入"npm install -g less"。
    在这里插入图片描述

  4. 检查less是否安装成功 在终端中输入命令“lessc -v”
    在这里插入图片描述

less的编译

1.在vscode中装Easy less插件(这里装插件方式不赘述)
2.将less文件ctrl+s保存后会自动生成同名css文件将其引入html文件即可

less 的嵌套

在les中支持将子元素写在父元素中,这样更加利于代码的层次逻辑化,保存后css会自动解析为css代码。
less代码

.header{
    width: 100px;
    height: 100px;
    background-color: aquamarine;
    margin: 0 auto;
    //a就为.header的子元素
    a{
        color: bisque;
        text-decoration: none;
    }
}

css代码

.header {
  width: 100px;
  height: 100px;
  background-color: aquamarine;
  margin: 0 auto;
}
.header a {
  color: bisque;
  text-decoration: none;
}
  • 当我们使用伪元素选择器/伪类选择器/交集选择器时,要在属性名前加&,再添加伪类/伪元素/交集选择器。

  • 若内层属性名前无“&”将会解析成后代选择器。

  • 若有“&将会解析成父元素自身或者父元素的伪类。

less代码

.header{
    width: 100px;
    height: 100px;
    background-color: aquamarine;
    margin: 0 auto;
    //a就为.header的子元素
    a{
        color: bisque;
        text-decoration: none;
        &:hover{
            color: black;
        }
    }
}

css代码

.header {
  width: 100px;
  height: 100px;
  background-color: aquamarine;
  margin: 0 auto;
}
.header a {
  color: bisque;
  text-decoration: none;
}
.header a:hover {
  color: black;
}

less的变量

当在一个页面中一种元素值被使用多次时,为方便修改书写我们便需要引入变量。
语法

  • @变量名:值;

变量名书写规范

  • 以@开头
  • 大小写敏感
  • 不能以数字开头
  • 不能包含特殊字符
// 变量的使用
// 书写格式:@变量名:;
// 例:
@color:pink;//设置了一个变量名为color的变量值为粉色
body{
    background-color: @color;
    //将body 的背景颜色改为粉色
}
div{
    color: @color;
    //将div中的字改为粉色
}
//使用变量有利与代码的维护和修改可以一次性更改元素的多个相同值

less的运算

任何的数字,颜色,变量都可以参加运算,运算符包括加(+),减(-),乘(*) 除(/)
注意:

  • 运算符左右需要空格。
  • 两个数运算若只有一个有单位则最后单位便以这个为准。
  • 若两个数运算两个都有单位且单位不同则取前面一个单位为最终结果的单位。
    less代码
@BaseFont:50px;
.box{
    width: 50+50px;
    height: 25px*3;
    img{
        height: 82rem/@BaseFont;//这里@BaseFont变量的单位为px
        width: 82rem/@BaseFont;
    }
}

css代码

.box {
  width: 100px;
  height: 75px;
}
.box img {
  height: 1.64rem;
  width: 1.64rem;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值