是否可以进行SASS混合以将其输出放在选择器的前面?我使用Modernizr检查浏览器的svg功能。当支持svg时,它将svg类输出到<html>元素。
我希望background-image根据svg功能进行更改。基本上,这就是我需要的:
.container .image { background-image: url('some.png'); }
html.svg .container .image { background-image: url('some.svg'); }
Run Code Online (Sandbox Code Playgroud)
我希望在SCSS中拥有一个混合,可以@include通过以下方式进行:
.container {
.image {
background-image: url('some.png');
@include svg-supported {
background-image: url('some.svg');
}
}
}
Run Code Online (Sandbox Code Playgroud)
不必写:
.container {
.image {
background-image: url('some.png');
}
}
@include svg-supported {
.container {
.image {
background-image: url('some.svg');
}
}
}
Run Code Online (Sandbox Code Playgroud)
这有可能吗?
在这里找到答案。
可以使用&符号来实现。作为参考,在这种情况下需要的mixin是
@mixin svg-supported {
html.svg & {
@content;
}
}
Run Code Online (Sandbox Code Playgroud)
可以按以下方式使用它:
.image {
background-image: url('some.png');
@include svg-supported {
background-image: url('some.svg');
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1726 次 |
| 最近记录: |