您可以扩展Sass的功能,为用户提供不同类型的功能和自定义。要使用这些功能,用户应该有Ruby的知识。
您可以在使用Ruby API时定义自己的Sass函数。您可以通过将自定义函数添加到Ruby方法来添加自定义函数,如下面的代码所示:
module Sass::Script::Functions def reverse(string) assert_type string, :String Sass::Script::Value::String.new(string.value.reverse) end declare :reverse, [:string] end
在代码中你可以看到,Functions.declare 指定函数的参数名称。如果失败,它将不接受任何参数,即使函数是工作,它也采取任意关键字参数。您可以使用 value 存取器获取Ruby值,并使用 rgb,红色,绿色 或蓝色。
Sass存储解析的文档的缓存,可以重新使用而无需再次解析。Sass使用:cache_location 在文件系统上写入高速缓存文件。它可以更快地编译Sass文件,如果删除缓存文件,下次编译时将再次生成它们。您可以通过设置:cache_store 选项来定义自己的缓存存储。这将写入文件系统上的缓存文件或共享缓存文件到Ruby进程或机器。Sass使用 Sass :: CacheStores :: Base 子类的实例来存储和检索缓存结果。
Sass使用 @import 导入SCSS和Sass文件,并将路径传递到 @import 规则,以便为指定的路径找到合适的路径代码。Sass导入器使用文件系统加载代码并使用数据库或不同的文件命名方案添加到加载。
单个导入器可以进行单个文件加载,并且可以与文件系统的路径一起放置在:load_paths 数组中。使用 @import 时,Sass寻找导入导入器路径的加载路径。找到路径时,将使用导入的文件。用户可以从 Sass :: Importers :: Base 继承导入程序。
在本章中,我们将学习 CSS扩展。CSS扩展可以用于增强网页的功能。下表列出了SASS中使用的一些CSS扩展:序号CSS扩展和描述1 嵌套规...
描述 @mixin 指令用于定义mixin,它可选地包括mixin名称后面的变量和参数。例子以下示例演示如何在SCSS文件中使用 @mixin :sampl...
下表列出了您可以在SASS中使用的所有规则和指令。序号指令和描述1@import 它导入SASS或SCSS文件,它直接获取要导入的文件名。2@m...
描述扩展连接到一个选择器,它看起来类似于具有选择器作为参数的伪类。 当规则集具有许多选择器时,则关键字扩展可以应用于任何...
描述它添加属性值到最后。例子下面的例子演示了在LESS文件中使用合并逗号功能:!doctype htmlhead titleMerge Comma/title link ...