Sass映射和缩进语法

时间:2014-05-22 13:36:44

标签: sass

有没有办法缩进Sass' 3.3 mappings

在scss中我们可以写下以下内容:

$colors: (
  header: #b06,
  text: #334,
  footer: #666777
)

但在Sass中,我不能在括号中添加任何中断。我认为括号是映射语法所必需的。

$colors:
    header: #b06
    text: #334
    footer: #666777

Syntax error: Illegal nesting: Nothing may be nested beneath variable declarations.

我尝试了一些差异,没有编译没有错误。

要编译Sass,我需要将其写入一个字符串,如下所示:

$colors: (header: #b06, text: #334, footer: #666777)

但它不是缩进语法。

我认为这是一个很好的演练,可以将缩进的内容写入SCSS文件然后导入它们。

2 个答案:

答案 0 :(得分:11)

SASS 中的缩进语法存在许多问题。

不幸的是 SASS 语法不支持多行。阅读文档时,只有一个例外,当涉及到多个 CSS 选择器时,例如:

.users #userTab,
.posts #postTab
    width: 100px
    height: 30px

请阅读完整的文档:

http://sass-lang.com/docs/yardoc/file.INDENTED_SYNTAX.html#multiline_selectors

因此, SASS 中的参数列表不可能获得多行支持。

答案 1 :(得分:6)

这是一个已知问题,不会很快解决。

  

这绝对是我想添加的内容,但由于需要重构缩进语法,需要花费大量精力。现在,它的优先级低于添加让每个人受益的功能。

https://github.com/sass/sass/issues/1088