【问题标题】:How to create sass mediaqueries with variables?如何使用变量创建 sass 媒体查询?
【发布时间】:2014-01-03 18:37:02
【问题描述】:

有没有一种时髦的方式来编写这个 scss 代码并避免重复?

$gutter: 0.5em;
$width-l: 62em;
$width-xl: 98em;
$columns: 4;

.bloc { margin-right:$gutter; }
.content-bloc { margin-right: -$gutter; }

重复部分:

@media (min-width: $width-l) {
    body { width: $width-l; }

    $bloc-width: ($width-l + $gutter) / $columns;

    .bloc-1 { width: $bloc-width - $gutter; }
    .bloc-2 { width: $bloc-width * 2 - $gutter; }
    .bloc-3 { width: $bloc-width * 3 - $gutter; }
    .bloc-4 { width: $bloc-width * 4 - $gutter; }
}
@media (min-width: $width-xl) {
    body { width: $width-xl; }

    $bloc-width: ($width-xl + $gutter) / $columns;

    .bloc-1 { width: $bloc-width - $gutter; }
    .bloc-2 { width: $bloc-width * 2 - $gutter; }
    .bloc-3 { width: $bloc-width * 3 - $gutter; }
    .bloc-4 { width: $bloc-width * 4 - $gutter; }
}

【问题讨论】:

  • 对于 .bloc 类,为什么不使用@each

标签: sass


【解决方案1】:

我想出了这个:

@each $width in $width-l, $width-xl { 
    @media (min-width: $width) {
        body {
            width: $width;
        }

        $bloc-width: ($width + $gutter) / $columns;

        @for $i from 1 through 4 {
            .bloc-#{$i} {
                width: ($bloc-width * $i) - $gutter;
            }
        }
}
}

【讨论】:

    猜你喜欢
    • 2012-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-30
    • 2019-12-09
    • 2020-04-15
    • 2016-08-25
    相关资源
    最近更新 更多