@ at-root a#{&}会导致错误

时间:2016-08-17 23:19:42

标签: css ruby windows sass compass

当我尝试使用@ at-root和Interpolation时,我遇到了错误......但我不确定为什么......我甚至只是使用了一个错误的...用于测试的书籍示例,我仍然收到错误:



.button {
  @at-root a#{&} {
   color: green;
  }
}




错误sass / Site.scss(sass / partials / _site-title.scss的第28行:无效的CSS  之后" @ at-root a#{&#34 ;:期望的表达式(例如1px,粗体),是"&} {")

功能应该在那里,我使用Sass 3.4.22与Compass 1.0.3相结合,所以我认为它可能是一个开发环境问题?我习惯在Mac上工作,但是我使用的是带有ruby 2.2.5p319(i386版本)的Windows 7计算机。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

你不能这样做插值。

将文件重命名为.scss.erb扩展名,然后使用ERB进行插值:

.button {
  @at-root a<%= "my_string_inserted_with_ruby" %> {
   color: green;
  }
}

但我不清楚......你试图插入的&是什么,为什么要插值呢?

答案 1 :(得分:0)

如果我编译你的代码,我没有答案,只能帮助解决问题

.button { @at-root a#{&} { color: green; } }

按预期汇编到此

a.button { color: green; }

所以它听起来确实像开发环境问题。对不起,我帮不了多忙。我在使用原子的windows机器上,使用node-sass&amp;萨斯-自动编译。