3.31 分享

什么是CSS预处理器?

CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为 CSS 增加了一些编程的特性,将 CSS 作为目标生成文件,然后开发者就只要使用这种语言进行编码工作。

通俗的说,“CSS 预处理器用一种专门的编程语言,进行 Web 页面样式设计,然后再编译成正常的 CSS 文件,以供项目使用。CSS 预处理器为 CSS 增加一些编程的特性,无需考虑浏览器的兼容性问题”,例如你可以在 CSS 中使用变量、简单的逻辑程序、函数(如右侧代码编辑器中就使用了变量$color)等等在编程语言中的一些基本特性,可以让你的 CSS 更加简洁、适应性更强、可读性更佳,更易于代码的维护等诸多好处。

其它 CSS 预处理器语言:
Sass(SCSS)
LESS
Stylus
Turbine
Swithch CSS
CSS Cacheer
DT CSS
这次分享将着重为大家介绍 CSS 预处理器中的 Sass。


什么是Sass

Sass 官网上是这样描述 Sass 的:

Sass 是一门高于 CSS 的元语言,它能用来清晰地、结构化地描述文件样式,有着比普通 CSS 更加强大的功能。 Sass 能够提供更简洁、更优雅的语法,同时提供多种功能来创建可维护和管理的样式表。

Sass 前世今生:

Sass 是最早的 CSS 预处理语言,有比 LESS 更为强大的功能,不过其一开始的缩进式语法(Sass 老版本语法,后面课程会详细介绍 )并不能被大众接受,不过由于其强大的功能和 Ruby on Rails 的大力推动,还是有很多开发者选择了 Sass。

Sass 是采用 Ruby 语言编写的一款 CSS 预处理语言,它诞生于2007年,是最大的成熟的 CSS 预处理语言。最初它是为了配合 HAML(一种缩进式 HTML 预编译器)而设计的,因此有着和 HTML 一样的缩进式风格。

为什么早期不如 LESS 普及?

虽然缩进式风格可以有效缩减代码量,强制规范编码风格,但它一方面并不为大多数程序接受,另一方面无法兼容已有的 CSS 代码。这也是 Sass 虽然出现得最早,但远不如 LESS 普及的原因。

Sass 和 SCSS 有什么区别

Sass 和 SCSS 其实是同一种东西,我们平时都称之为 Sass,两者之间不同之处有以下两点:

  • 文件扩展名不同,Sass 是以“.sass”后缀为扩展名,而 SCSS 是以“.scss”后缀为扩展名
  • 语法书写方式不同,Sass 是以严格的缩进式语法规则来书写,不带大括号( {} )和分号( ; ),而 SCSS 的语法书写和我们的 CSS 语法书写方式非常类似。

先来看一个示例:
Sass语法:

        $font-stack: Helevetica, sans-serif           //定义变量
        $primary-color: #333                          //定义变量
        
        body
        font: 100/5 $font-stack
        color: $primary-color

SCSS语法

         $font-stack: Helevetica, sans-serif          
         $primary-color: #333                       
         
         body {
         font: 100/5 $font-stack
         color: $primary-color 
         }
 

编译出来的CSS

        body{
        font: 100% Helvetica, sans-serif;
        color: #333
        }

Sass/SCSS 和纯 CSS 写法差很多吗?

写法差很多吗?这是很多初学者会问的一个问题。那么借此机会简单了解一下。

Sass 和 CSS 写法有差别:

Sass 和 CSS 写法的确存在一定的差异,由于 Sass 是基于 Ruby 写出来,所以其延续了 Ruby 的书写规范。在书写 Sass 时不带有大括号和分号,其主要是依靠严格的缩进方式来控制的

SCSS和CSS写法无差别:

SCSS和CSS写法无差别,这也是Sass后来越来越受大众喜欢的原因之一。简单点说,把你现有的“.css”文件直接修改成“.scss”即可使用。

注意:“.sass”只能使用Sass老语法规则(缩进规则),“.scss”使用的是Sass的新语法规则,也就是SCSS语法规则(类似CSS语法规则)


Sass语法

Sass声明变量

在有些编程语言中,声明变量都是使用关键词“var”开头,但是在Sass不使用这个关键词,而是使用大家都喜欢的美元符号“$”开头。
$width: 300px;
$为变量声明符,width为变量名称,300为变量值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章