Using Sass
原创使用Sass
Sass是一种比CSS更强大和稳定的预处理器,它通过扩展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的信息,请打开此链接。
您可以通过将以下行添加到config/dependencies.rb文件中,在Merb中启用Sass:
dependency "merb-haml"
缓存
Sass缓存文档,如模板和部分,这些文档可以重复使用而无需重新解析,除非它们已更改。这使得Sass文件的编译速度更快,当模板被分成多个文件并全部导入到一个大文件中时,效果更好。如果您删除缓存文件,它们将在下次编译时重新生成。
选项
您可以使用以下行在Rails的environment.rb文件或Rack应用程序的config.ru文件中设置选项:
Sass::Plugin.options[:style] = :compact
您还可以使用以下行在Merb的init.rb文件中设置选项:
Merb::Plugin.config[:sass][:style] = :compact
以下是与Sass和SCSS一起使用的一些选项,如下表所述:
| 序号 | 选项与描述 |
|---|---|
| 1 |
:style 显示输出的样式。 |
| 2 |
:syntax 您可以使用缩进语法用于sass,CSS扩展语法用于scss。 |
| 3 |
:property_syntax 它使用缩进语法来使用属性。如果不正确,则会抛出错误。例如,考虑"background: #F5F5F5",其中background是属性名称,#F5F5F5是其属性值。您必须在属性名称后使用冒号。 |
| 4 |
:cache 它加快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 通过将其设置为true,为Sass::Plugin::Compiler#watch(监视模板和CSS文件更新)使用轮询后端。 |
| 11 |
:full_exception 当生成的CSS文件中SASS代码发生异常时,显示错误描述。它显示CSS文件中发生错误的行号以及源代码。 |
| 12 |
:template_location 它提供应用程序中模板目录的路径。 |
| 13 |
:css_location 它提供应用程序中CSS样式表的路径。 |
| 14 |
:unix_newlines 通过将其设置为true,在写入文件时提供Unix样式换行符。 |
| 15 |
:filename 它是正在显示的文件名,用于报告错误。 |
| 16 |
:line 它指定SASS模板的第一行,并显示错误的行号。 |
| 17 |
:load_paths 用于加载使用@import指令包含的SASS模板路径。 |
| 18 |
:filesystem_importer 用于从文件系统导入文件,使用Sass::Importers::Base子类处理字符串加载路径。 |
| 19 |
:sourcemap 它生成源映射,指导浏览器查找SASS样式。它使用三个值:
|
| 20 |
:line_numbers 通过将其设置为true,显示CSS文件中报告错误的行号。 |
| 21 |
:trace_selectors 当设置为true时,有助于跟踪导入和混合器的选择器。 |
| 22 |
:debug_info 当设置为true时,使用行号和文件提供SASS文件的调试信息。 |
| 23 |
:custom 它使数据可用于单独应用程序中的SASS函数。 |
| 24 |
:quiet 通过将其设置为true,禁用警告。 |
语法选择
您可以使用Sass命令行工具确定在Sass模板中使用的语法。默认情况下,Sass使用缩进语法,这是基于CSS的SCSS语法的替代方案。您可以使用SCSS命令行程序,它与Sass程序类似,但默认情况下,它认为语法是SCSS。
编码
Sass通过指定以下CSS规范来使用样式表的字符编码:
首先,它检查Unicode字节,然后是@charset声明,最后是Ruby字符串编码。
接下来,如果未设置任何内容,则将字符编码视为UTF-8。
通过使用@charset声明明确确定字符编码。只需在样式表开头使用"@charset encoding name",SASS将假定这是给定的字符编码。
如果SASS的输出文件包含非ASCII字符,则它将使用@charset声明。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。
开发学习网



