Sass SCSS mixins表示CSS错误无效
我有以下包含mixin的SCSS文件Sass SCSS mixins表示CSS错误无效,sass,Sass,我有以下包含mixin的SCSS文件 @mixin respond-to($media) { @if $media == screen-xs { @media only screen and (min-width: $screen-xs-min) { @content; } @at-root .no-mediaqueries #{&}{ @content }; } @else if $media ==
@mixin respond-to($media) {
@if $media == screen-xs {
@media only screen and (min-width: $screen-xs-min) {
@content;
}
@at-root .no-mediaqueries #{&}{ @content };
} @else if $media == screen-sm {
@media only screen and (min-width: $screen-sm-min) {
@content;
}
@at-root .no-mediaqueries #{&}{ @content }
} @else if $media == screen-md {
@media only screen and (min-width: $screen-md-min){
@content;
}
@at-root .no-mediaqueries #{&}{ @content }
} @else if $media == screen-lg {
@media only screen and (min-width: $screen-lg-min){
@content;
}
@at-root .no-mediaqueries #{&}{ @content }
}
}
当我尝试访问该网页时,它显示错误:
“…mediaqueries#{”后的CSS无效:预期表达式(例如1px,
粗体),是“&}{@content};”
有什么想法吗?我将sass gem更新为3.2.13,但我不知道compass rails gem是否也更新了。根目录下的
@at
指令需要sass 3.3,它仍在开发中。您需要使用--pre
标志升级Sass:gem安装Sass--pre
不应该$media==screen xs
像这样:$media==screen xs”
?这些更改都没有影响问题。值得指出的是,复制媒体查询内外的样式会导致CSS文件非常臃肿。即使在更新sass gem之后,我仍然会遇到同样的错误。是因为compass gem仍然使用sass 3.1吗?请检查您的版本(sass--version
)?我正在运行Sass 3.3.0.rc.2(Maptastic Maple),您的代码对我来说编译得很好。@user1742188是的,这是因为Compass的版本低于1.0.0(Sass 3.3仅在Compass版本大于v1时受支持)