私はSASSを使用していますが、実際には私の質問はプレーンな古いCSSにも当てはまります。だから私はこのクラスを持っています:
.some-icon {
background-image: url('data:image/png;base64, someBase64String');
}
そのため、このアイコンをいくつかの場所で使用する必要があります。また、表示されるさまざまな場所に正しく配置するために、いくつかの追加の css を記述する必要があります。この巨大なbase64文字列を複製したくないので、どのアプローチを使用するのだろうか.
SASS
の拡張構文を使用します。
.use-case-a{
@extend .some-icon;
margin: 10px 0 0 0;
...
}
コンパイルされた css は次のようになります。
.some-icon, .use-case-a {
background-image: url('data:image/png;base64, someBase64String');
}
.use-case-a{
margin: 10px 0 0 0;
...
}
または、次のように書く必要があります。
.some-icon {
background-image: url('data:image/png;base64, someBase64String');
}
.use-case-a{
margin: 10px 0 0 0;
...
}
そして、両方のクラスsome-icon
を適用use-case-a
しますか?
最初のアプローチはパフォーマンスを低下させる可能性があることを読みました: https://github.com/nex3/sass/issues/12
しかし、複数のクラスを適用するとパフォーマンスが低下することも読みました。
ここで推奨されるプラクティスは何ですか?