Sass 简介

更新日期: 2019-11-15 阅读: 2.5k 标签: Sass

概念

Sass由hampton catlin设计,natalie weizenbaum于2006年开发,它可以免费下载和使用。

Sass是一个将脚本解析成css的脚本语言(SassScript),也是一款CSS预处理器,它减少了CSS的重复,也因此节省了时间。

Sass 是对CSS3(层叠样式表)的语法的一种扩充 Sass ,扩展了 CSS3,增加了规则、变量、混入、选择器、继承等属性,生成了良好的格式化CSS代码,便于代码的维护和组织。


功能

  • 完全兼容 CSS 的所有版本
  • 增加了变量、嵌套、混合等功能
  • 通过函数进行颜色值与属性值的运算
  • 提供了控制指令(control directives)
  • 自定义输出格式


语法格式

Sass 有两种语法格式:SCSS(Sassy CSS,较新的语法)和缩进语法(最开始的叫法)。

前者支持大多数 CSS hacks 写法以及浏览器前缀写法,以及早期的IE 滤镜写法,这种格式以 .scss 作为扩展名;后者简称 Sass,是一种简化格式,与 Haml 类似,使用缩进代替花括号来区分代码(属性表示某个选择器)并用换行代替分号分隔属性,用回车将不同规则分隔开,这样相对来说它比 SCSS 更容易阅读且书写也较为快速,它以 .sass 作为扩展名。


Sass使用情况

浏览器是不理解sass代码的,因此我们将需要一个sass预处理器来将sass代码转换为标准css,这个过程称为运输。所以,我们需要给一个transpiler(某种程序)一些sass代码,然后得到一些css代码。

提示:transpiling是一个术语,用于将用一种语言编写的源代码转换/翻译成另一种语言。

Sass文件类型:Sass文件的扩展名为.scss。

Sass评论:Sass支持标准 CSS 注释 /*comment*/,此外还支持内联注释 //comment。

    /* 定义原色 */
    $defColor1: #f44586;
    $defColor2: green;
    
    /* 使用变量 */
    .main_use{
        background: $defColor2;  //在这里我们可以设置内联注释
    }

增加特性

  • 变量 Sass支持定义变量,变量以美元符号($)作为开头,用冒号(:)赋值。 支持四种数据类型:
    • 字符串
    • 数值
    • 布尔类型
    • 颜色 变量可以用作函数的参数或者是返回值,在解释的过程中,解释器会把变量的值写入最终的CSS文件中。
  • 嵌套(Nesting) SCSS 支持嵌套并且支持代码块的嵌套(CSS支持嵌套但不支持代码块的嵌套),它可以清晰的表示元素之间的关系。
  • 导入(@import) Sass 支持@import 指令,该指令允许我们将一个文件的内容包含在另一个文件中,该指令包含CSS文件,因此不需要额外的调用HTTP,而由于性能问题,CSS指令每次调用都会创建一个额外的HTTP,在这里Sass就没有这样的问题。
  • 混入(mixin) Mixin包含一段合法Sass代码,类似于C语言的宏定义;解释器在调用mixin时会将它扩展成它所包含的完整Sass代码,可以有效的减少代码重复,从而写出的代码更加干净简洁。
  • 继承(@extend) 该指令允许我们将一组CSS属性从一个选择器共享到另一个选择器。


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/6453

相关推荐

sass和less的优缺点

sass和less都是css的预编译处理语言,他们引入了mixins,参数,嵌套规则,运算,颜色,名字空间,作用域,JavaScript赋值等 加快了css开发效率,当然这两者都可以配合gulp和grunt等前端构建工具使用

SCSS 常用属性合集

Scss 文档太多了,但还是耐心看完了,总结自己常用的一些语法。Sass 允许将一套 CSS 样式嵌套进另一套样式中,内层的样式将它外层的选择器作为父选择器

node-sass是什么?

Node-sass是一个库,它将Node.js绑定到LibSass(流行样式表预处理器Sass的C版本)。它允许用户以令人难以置信的速度将.scss文件本地编译为css,并通过连接中间件自动编译

Sass和Less的区别?

这篇文章主要解答以下几个问题,供前端开发者的新手参考。1、什么是Sass和Less?2、为什么要使用CSS预处理器?3、Sass和Less的比较4、为什么选择使用Sass而不是Less?

SASS简介及使用方法

Sass是css的一个扩展开发工具,它允许你使用变量、条件语句等,使开发更简单可维护。这篇文章介绍:基本语法(变量、计算功能、嵌套、注释、继承、混合、颜色函数、引入外部文件)、高级用法(函数 function、if条件语句、循环语句)

SCSS提取和懒加载

本节课讲解在webpack v4中的 SCSS 提取和懒加载。值得一提的是,v4和v3在 Scss 的懒加载上的处理方法有着巨大差别。本节课主要涉及 SCSS 在懒加载下提取的相关配置和插件使用。

webpack配置sass模块的加载

webpack管理的项目,我们希望用sass定义样式,为了正常编译,需要做如下配置。这里不讲webpack的入门,入门的文章,我推荐这篇《webpack入门》。为了使用sass,我们需要安装sass的依赖包

为什么node-sass总是安装失败?

node-sass是我们开发中很常见的依赖包,也是安装时间冗长和最常见到报错的依赖。安装node-sass失败原因有很多种,我们在说失败原因之前,先来分析一下node-sass的安装过程

4种灵活的Scss编译输出风格整理

很多人从使用Scss的那一刻起,就被别人告诉了如何编译。所以,基本上也就只会一种命令编译方式。其实Scss提供了4种风格输出CSS,以满足更多人的需求。不同的输出方式如下:

Vue-cli 3.0 使用Sass Scss Less预处理器

项目中使用预处理器,可以有效减少css代码量,使用Sass||Scss||Less;你可以在创建项目的时候选择预处理器 (Sass/Less/Stylus)。如果当时没有选好,内置的 webpack 仍然会被预配置为可以完成所有的处理。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!