sass、scss、less、的区别

sass、scss、less都是css预处理器,区别如下:

1语法格式:

sass采用缩进格式,不使用大括号和分号

css 复制代码
$color: #333
body
 background-color: $color;
 font-size: 14px;
 h1:
    color: $color

scss与css语法相似,使用大括号和分号

css 复制代码
$color: #333;

body {
  background-color: $color;
  font-size: 14px;
  h1 {
    color: $color;
  }
}

less同样类似css语法

css 复制代码
@color: #333;

body {
  background-color: @color;
  font-size: 14px;
  h1 {
    color: @color;
  }
}

2变量定义与使用:

sass和scss都使用$符定义变量

css 复制代码
$primary-color: #007bff;
$secondary-color: #6c757d;

.button {
  background-color: $primary-color;
  color: $secondary-color;
}

less使用@符号定义变量

css 复制代码
@primary-color: #007bff;
@secondary-color: #6c757d;

.button {
  background-color: @primary-color;
  color: @secondary-color;
}

3嵌套规则:

sass和scss都使用$符表示父元素

css 复制代码
nav {
  ul {
    list-style: none;
    li {
      display: inline-block;
      a {
        color: #333;
        &:hover {
          color: #000;
        }
      }
    }
  }
}

less使用~表示父元素

css 复制代码
nav {
  ul {
    list-style: none;
    li {
      display: inline-block;
      a {
        color: #333;
        &:hover {
          color: #000;
        }
      }
    }
  }
}

4混合(Mixins):

sass和scss通过@mixin定义,@include调用

css 复制代码
@mixin button-style {
  background-color: #007bff;
  color: #fff;
  padding: 10px 20px;
  border-radius: 5px;
}

.button {
  @include button-style;
}

less使用.mixin()形式定义和调用

css 复制代码
.button-style() {
  background-color: #007bff;
  color: #fff;
  padding: 10px 20px;
  border-radius: 5px;
}

.button {
 .button-style();
}

5继承:

sass、scss和less都使用@extend实现继承

css 复制代码
//sass
.error {
  border: 1px solid red;
  background-color: #f8d7da;
}

.serious-error {
  @extend.error;
  border-width: 3px;
}


//less

.error {
  border: 1px solid red;
  background-color: #f8d7da;
}

.serious-error {
  @extend.error;
  border-width: 3px;
}
相关推荐
小白路过6 小时前
node-sass和sass兼容性使用
前端·rust·sass
web小白成长日记4 天前
前端三个月速成,是否靠谱?
前端·react.js·前端框架·html·reactjs·webkit·scss
静小谢4 天前
sass笔记
前端·笔记·sass
weixin_465790915 天前
技术分享】利用matlab函数实现曲线图像数据提取、复现和修改,并进行后处理【附原始数据文件和...
scss
豆豆6 天前
主流的企业建站方式,sass云建站和自助建站系统怎么选择?
前端·css·低代码·cms·sass·低代码平台·站群
cz追天之路9 天前
华为机考 ------ 识别有效的IP地址和掩码并进行分类统计
javascript·华为·typescript·node.js·ecmascript·less·css3
cz追天之路10 天前
华为机考--- 字符串最后一个单词的长度
javascript·css·华为·less
C_心欲无痕10 天前
css - 预处理器sass与后处理器postcss
css·sass·postcss
karshey15 天前
【前端】svelte支持scss,包管理器是webpack
前端·webpack·scss
dixiuapp17 天前
智能报修系统从连接到预测的价值跃迁
大数据·人工智能·物联网·sass·工单管理系统