【发布时间】:2017-06-06 18:02:41
【问题描述】:
我正在使用 Compass mixin 为视网膜创建媒体查询,例如:
header {
height: $header-image-height;
text-align: center;
position: relative;
@include breakpoint($standard-resolution) {
background:
linear-gradient(
rgba(0, 0, 0, 0.1),
rgba(0, 0, 0, 0.1)
),
url(../../img/dist/xxx.jpg) center center no-repeat;
}
@include breakpoint($retina-resolution) {
background:
linear-gradient(
rgba(0, 0, 0, 0.1),
rgba(0, 0, 0, 0.1)
),
url(../../img/dist/xxx_2x.jpg) center center no-repeat;
background-size: 1176px auto;
}
color: $header-color;
@extend %montserrat-bold;
}
效果很好。但是,如果我将相同的 mixin 放入另一个元素中,我将在最后得到 @media 的重复输出 - 每个元素一个输出:
@media screen and (max-resolution: 1.9999dppx), screen and (-webkit-max-device-pixel-ratio: 1.9999), screen and (max--moz-device-pixel-ratio: 1.9999), screen and (max-resolution: 191.9904dpi) {
header {
background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url(../../img/dist/xxx.jpg) center center no-repeat;
}
}
其他元素的输出相同。有什么方法可以让我从这个 mixin 中制作占位符,所以所有元素都在同一个 @media 指令下?
【问题讨论】:
标签: sass placeholder mixins compass