私はこの非常に単純な Sass 関数を持っています:
@function to-rem($pxval) {
@return #{$pxval / $base-font-size}rem;
}
値に変換$pxval
するものrem
margin-top: to-rem(24);
出力:
margin-top: 1.5rem;
IE 8(古いIE)以下はサポートしていないrem
ため、このような状況を処理するために、古いIEのみのスタイルシートにスタイルをtrueに出力する古いIEのフラグがあります。 :
@function to-rem($pxval) {
@if $old-ie {
@return #{$pxval}px;
} @else {
@return #{$pxval / $base-font-size}rem;
}
}
しかし、私はレスポンシブ サイトを扱っているため、サポートしていない Opera Mini をサポートする必要がありrem
、古い IE のように Opera Mini をフィルタリングする方法はありません。
ミックスインを使用せずにこれを行う方法はありますか? まったく同じことを行うミックスインがありますが、それを使用して複数の値を宣言し、複数のプロパティを処理できます。
@include to-rem(box-shadow, (inset 0 0 0 1 #2a9022) (inset 0 0 3 #459966));
@include to-rem(width height, 125);
単一の値の関数が好きです。たとえば、書くのが簡単だからです
padding: to-rem($spacing-base) 0;
これと比較して:
@include to-rem(padding, $spacing-base 0);