sassについての質問です。よろしくお願いします。
@extend で継承する場合、呼び出したい場所と同じファイル、または@importで、書いてあるファイル(例:common.scssなど)を読み込むと思うのですが、
例えばindex.scssとcontents.scssなど複数のファイルで継承を使う場合、common.scssを@importすると、index.cssとcontents.cssの両方のファイルに、いったん継承もとの内容がはき出されるので、コードが重複して無駄が多いようなきがしております。。
(上記意味わかりにくかったらすみません)
あと、sassで書いたファイルを元のscssファイルを持っていない人が更新するときは、はきだされたCSSを更新する感じでしょうか。
CSSをscssに変換する方法も、あまりキレイなコードでないようなので・・
私のやりかたが効率悪いのかもしれないんですが、一人でやっていて相談できる人がいなくてここに書き込みしてみました。
効率よく作業されている方はどんな感じでされているか、アドバイスいただけますと幸いです。
どうぞよろしくお願いいたします。
みんなの回答 2 件
@extendで継承元に出力させないように、.class-nameじゃなくて%class-nameにすればいいとおもう。
> index.cssとcontents.cssの両方のファイルに、
> いったん継承もとの内容がはき出されるので、
> コードが重複して無駄が多いようなきがしております。
制作体制にもよるけど、今は中規模以下のサイトなら、すべてのcssを1ファイルで出力する傾向(ページの読み込みスピードを上げる)にあるから、その問題が起きるケースは少ないだろうね。ただ、イレギュラー的にそういう状況が発生する可能性もあるので、そういう場合は、素直にcommon.scssはcommon.cssとして書き出してそれぞれのページで読みこめばいいと思う。
> あと、sassで書いたファイルを元のscssファイルを持っていない人が
> 更新するときは、はきだされたCSSを更新する感じでしょうか。
「今どきsass使えない環境ってどうなのよ」っていうのが大半の意見とは思うが、致し方ないケースもあるはずなので、sass使えない人(アルバイトやパートさん想定)が参加してもよいcssを別途用意する。もし、sass使えない人が全般的に関わるのであれば、それはsassの導入自体を諦めるべきかと思う。たとえばイニシアティブのある人がsass使えないのはだいぶよろしくない。
関連するトピックス