【发布时间】:2013-07-11 06:23:42
【问题描述】:
我发现这种方法可以使用 mixin 轻松添加 @media 块:
@mixin phone() {
@media only screen and (max-width: 480px) {
@content;
}
}
要使用它,只需输入如下内容:
p {
@include phone { ... }
span {
@include phone { ... }
}
}
但问题在于真正的 CSS 输出:
@media only screen and (max-width: 480px) {
p { ... }
}
@media only screen and (max-width: 480px) {
p span { ... }
}
它复制 @media ... 部分,这会使 CSS 膨胀。
有没有办法让 mixin 像占位符一样工作?所以它将合并所有@content 并将其放在同一个@media ... 块下。
所以结果会是这样的
@media only screen and (max-width: 480px) {
p { ... }
p span { ... }
}
我知道我可以将@include phone 放在文件末尾并在该块中写入所有必要的样式。
但是在原始样式之外编写媒体查询样式会更容易阅读和组织。
谢谢
【问题讨论】:
标签: sass compass-sass