使用 Sass
SASS是更强大和稳定,通过使用CSS的扩展提供基本语言的力量。您可以使用三种不同的方式使用SASS:
作为命令行工具
作为一个Ruby模块
作为Rack启用框架的插件
如果您在Windows上使用SASS,则需要先安装 Ruby 。 有关安装Ruby的更多信息,请参阅 SASS安装一章。
下表显示了用于执行SASS代码的命令:
序号 | 命令和描述 |
1 | sass input.scss output.css 它用于从命令行运行SASS代码。 |
2 | sass --watch input.scss:output.css 当SASS文件更改时,它通知SASS监视文件并更新CSS。 |
3 | sass --watch app / sass:public / stylesheets 它用于观察整个目录,如果SASS在一个目录中包含许多文件。 |
Rack / Rails / Merb插件
Rack 是一个Web服务器接口,用于在Ruby中开发Web应用程序。 有关Rack的信息,请访问此链接。
您可以使用 config 文件夹下的 environment.rb 文件启用 Rails 3 版本中的SASS。使用以下行为Rails 3启用SASS:
config.gem "sass"
您可以使用以下行到Rails 3(和以上版本)的Gemfile,如下所示:
gem "sass"
Rails 是一个开放源代码的Web框架,它使用JSON,HTML,CSS和JavaScript等Web标准来显示用户界面。 要使用Rails,您需要具有Ruby和面向对象编程的基本知识。在这里了解更多关于Rails框架。
如果您要在 Rack 应用程序中启用SASS,请将以下行添加到应用程序根目录中的 config.ru 文件中:
require 'sass/plugin/rack' use Sass::Plugin::Rack
Merb 是一个Web应用程序框架,可为Rails提供速度和模块化。 要了解有关Merb的更多信息,只需打开此链接 。
您可以在 Merb 中启用SASS,方法是在 config / dependencies.rb 文件中添加以下行:
dependency "merb-haml"
缓存
SASS缓存诸如模板和分支的文档,可以重用它们而不解析它们,除非它们已经改变。它使得SASS文件的编译更快,并且当模板被分割成单独的文件并且被导入到一个大文件中时,工作更好。如果您删除缓存的文件,它们将在下次编译时再次生成。
选项
您可以在Rack应用程序的Rails或 config.ru 文件的 environment.rb 文件中设置选项,方法如下:
Sass::Plugin.options[:style] = :compact
您还可以使用以下行在Merb的 init.rb 文件中设置选项:
Merb::Plugin.config[:sass][:style] = :compact
有一些选项可用于 SASS 和 SCSS ,如下表所述:
序号 | 选项和描述 |
---|---|
1 | :style 它显示输出的样式。 |
2 | :语法 您可以为 sass 使用缩进语法,并为 scss 使用CSS扩展语法。 |
3 | :property_syntax 它使用缩进语法来使用属性。 如果它不正确,那么它会抛出一个错误。 例如,考虑“background:#F5F5F5",其中背景是属性名称,#F5F5F5 是其属性值。 您必须在属性名称后面使用冒号。 |
4 | :缓存 它加速了SASS文件的编译。 默认情况下,它设置为true。 |
5 | :read_cache 如果未设置 cache 并且已设置 read_cache ,则只读取SASS文件。 |
6 | :cache_store 它可以用于存储和访问缓存的结果,方法是将其设置为 Sass :: CacheStores :: Base 的实例。 |
7 | :never_update 如果模板文件更改,它不应该更新CSS文件。 默认情况下,它设置为false。 |
8 | :always_update 每当模板文件更改时,它应该更新CSS文件。 |
9 | :always_check 它应该在服务器启动时检查更新。 如果SASS模板文件中有更新,它将重新编译和覆盖CSS文件。 |
10 | :poll 它通过将 Sass :: Plugin :: Compiler#watch(监视模板和CSS文件的更新)的轮询后端设置为true来使用轮询后端。 |
11 | :full_exception 每当在生成的CSS文件中的SASS代码中发生异常时,它显示错误描述。 它在CSS文件中显示与源一起发生错误的行号。 |
12 | :template_location 它提供了应用程序中模板目录的路径。 |
13 | :css_location 它提供了应用程序中CSS样式表的路径。 |
14 | :unix_newlines 当通过将文件设置为true来编写文件时,它提供Unix样式换行符。 |
15 | :filename 它是显示的文件名,用于报告错误。 |
16 | :行 它指定SASS模板的第一行并显示错误的行号。 |
17 | :load_paths 它用于加载使用 @import 指令包含的SASS模板的路径。 |
18 | :filesystem_importer 它用于从使用 Sass :: Importers :: Base 子类的文件系统中导入文件来处理字符串加载路径。 |
19 | :sourcemap 它生成指示浏览器找到SASS样式的源映射。它使用三个值:
|
20 | :line_numbers 它显示CSS文件中报告的错误的行号,方法是将其设置为true。 |
21 | :trace_selectors 当设置为true时,它有助于跟踪导入和混合选择器。 |
22 | :debug_info 它提供SASS文件的调试信息使用行号和文件时,它设置为true。 |
23 | :custom 它使数据可用于单独应用程序中的SASS函数。 |
24 | :quiet 它通过将警告设置为true来禁用警告。 |
语法选择
您可以使用SASS命令行工具确定您在SASS模板中使用的语法。默认情况下,SASS使用缩进语法,它是基于CSS的SCSS语法的替代。您可以使用类似于SASS程序的SCSS命令行程序,但默认情况下它认为语法是SCSS。
编码
SASS通过指定以下CSS规范使用样式表的字符编码:
首先它检查Unicode字节,下一个@charset声明,然后检查Ruby字符串编码。
接下来如果没有设置,则认为字符集编码为UTF-8。
通过使用@charset声明明确地确定字符编码。只需在样式表的开头使用“@charset encoding name",SASS将假设这是给定的字符编码。
如果SASS的输出文件包含非ASCII字符,那么它将使用@charset声明。