美文网首页
SCSS(Sass)入门

SCSS(Sass)入门

作者: 封燐 | 来源:发表于2019-11-04 13:37 被阅读0次

SCSS 是什么

SCSS 是 CSS 的扩展, 在保证兼容性的基础上, 允许使用变量、 嵌套、 混合、 导入等特性, 在编写大量的 CSS 文件时很有帮助。

SCSS 的历史

Sass(英文全称:Syntactically Awesome Stylesheets)是一个最初由Hampton Catlin设计并由Natalie Weizenbaum开发的类 CSS 语言。

发行时间:2007年
稳定版本:2016年3月28日

Sass 十分简洁,语法中几乎不含括号。后来前端工程师表示不含括号看不懂,于是 Sass 的开发者又提供了 SCSS,含括号。弱弱的前端工程师终于表示能看懂了。

Sass 的官方解释器是开源的并且用 Ruby 语言写成,但是也有用 PHP、C语言、Java 等实现的版本(C语言版本叫做llibSass,Java 语言版本叫做 JSass)。

SassScript 提供以下功能:变量、嵌套、混入(Mixin)、选择器继承等。

使用

在目录中新建 .scss 文件,并写入样式。
浏览器无法直接解析 .scss 文件,我们需要将其转变为 .css 文件。使用 Parcel 打包工具:

cd demo
npm init -y
npm i -D parcel
npx parcel index.html

最简单的几个语法

  1. 嵌套选择器
.nav {
  border: 1px solid grey;
  > ul {
    background: white;
    > li {
      border: 1px solid red;
    }
  }
}

输出的 CSS 代码为:

.nav {
  border: 1px solid grey;
}
.nav > ul {
  background: white;
}
.nav > ul > li {
  border: 1px solid red;
}
  1. 变量
    SCSS 使用 $ 符号来定义变量, 支持的变量类型有 数字(可带单位)字符串颜色 以及 布尔值 等, 示例如下:
$grey: #333;
$gray: $grey;
.nav {
  border: 1px solid $gray;
}

输出的 CSS 代码为:

.nav {
  border: 1px solid #333;
}
  1. mixin
@mixin border($border-color: red) {
  border: 1px solid $border-color;
}
.nav {
  @include border;
  > ul {
    background: white;
    > li {
      @include border(green);
    }
  }
}

输出的 CSS 代码为:

.nav {
  border: 1px solid red;
}
.nav > ul {
  background: white;
}
.nav > ul > li {
  border: 1px solid green;
}
  1. placeholder
%box {
  box-shadow: 0 0 3px black;
  margin: 10px;
  background: white;
  border-radius: 4px;
}
.nav {
  > ul {
    background: grey;
    > li {
      @extend %box;
    }
  }
}
.demo {
  height: 100px;
  @extend %box;
}

输出的 CSS 代码为:

.nav > ul {
  background: grey;
}
.nav > ul > li, .demo {
  box-shadow: 0 0 3px black;
  margin: 10px;
  background: white;
  border-radius: 4px;
}
.demo {
  height: 100px;
}

相关文章

  • sass/scss/less/css的前世今生

    sass/scss 和 less的区别 一. Sass/Scss、Less是什么? 二. Sass/Scss与Le...

  • SCSS(Sass)入门

    SCSS 是什么 SCSS 是 CSS 的扩展, 在保证兼容性的基础上, 允许使用变量、 嵌套、 混合、 导入等特...

  • sass/scss 入门

    Sass (英文全称:Syntactically Awesome Stylesheets) 简介 Sass 是一个...

  • 聊聊SCSS的语法(一)

    后缀名 SCSS是SASS3的语法分支,其中以\*.scss结尾的是scss文件,以\*.sass结尾的是sass...

  • CSS 预处理语言之 Scss 篇

    简介 1. Sass 和 Scss Sass 和 Scss 其实是同一种东西,我们平时都称之为 Sass;Scss...

  • sass和scss

    scss是对sass的升级,其实是同一个东西。sass文件后缀为.sass, scss文件后缀为.scss。sas...

  • SCSS速学

    scss/sass区别之一,scss有花括号、sass没有 scss的嵌套,相当于css的后代选择器 scss变量...

  • Scss 在项目中的使用

    1、在使用 Scss 之前,我们要知道 Sass、Scss 有什么不同? Scss 是 Sass 3 引入新的语法...

  • Hbuilder scss/sass编译 插件

    1. 安装插件 工具 -> 插件安装 -> scss/sass编译 -> 安装安装 scss/sass编译 插件 ...

  • 关于sass(scss)、less、postcss、stylus

    关于sass(scss)、less、postcss、stylus等的用法与区别 一. Sass/Scss、Less...

网友评论

      本文标题:SCSS(Sass)入门

      本文链接:https://www.haomeiwen.com/subject/awwuyctx.html