uchikoshi-fes / uchikoshi-fes.jp-2022

浅野学園 2022 年度文化祭のホームページの中身 (ソースコード)
https://uchikoshi-fes-2022.pages.dev/
Other
12 stars 2 forks source link

[DX]: Sass のリファクタリング #77

Closed TwoSquirrels closed 2 years ago

TwoSquirrels commented 2 years ago

改善対象の事柄

期待する挙動

補足情報

gendaineko2222 commented 2 years ago

pages/global.scss:root をおけばどこからでも var(変数名) で読み込めるからそっちのほうがシンプルかもです

例:

pages/global.scss

:root {
  --c-black: #000;
}

〇〇.module.scss

.title {
  color: var(--c-black);
}
TwoSquirrels commented 2 years ago

どっちがいいんだろ CSS 変数と Sass 変数の使い分けの基準よくわかってない()

TwoSquirrels commented 2 years ago

なんとなくだけど、特別な理由がない限りは Sass 変数を使ったほうがいいと思ってる。

TwoSquirrels commented 2 years ago

デメリットがあるらしい

gendaineko2222 commented 2 years ago

いろいろ調べてみた感じだとcssのほうがいいかなと思いますた

SCSS変数よりもネイティブCSSプロパティを使ったほうが良い理由

逆にデメリットも探してみた

参考

TwoSquirrels commented 2 years ago

サイトによって意見が割れてる気がする https://speakerdeck.com/bcrikko/getting-started-with-css-custom-properties?slide=7

gendaineko2222 commented 2 years ago

なるほど 静的であることがメリットとも取れるのか… たしかに特に理由がない限り、プリプロセッサ変数を使って、使いたい場所でcssカスタムプロパティを使うのが一番良さそうですね

TwoSquirrels commented 2 years ago

特に Next.js の Module CSS 機能を使って CSS をモジュール毎に分割しているので、 それに合わせて Sass 変数を使ったほうがいいかなと思った。 CSS 変数は子要素に勝手に伝搬しちゃうから。

TwoSquirrels commented 2 years ago

https://github.com/uchikoshi-fes/uchikoshi-fes.jp-2022/blob/1c1bb9c0e6b2d98a438eb3104fa09ac5953a3a35/next-seo.config.js#L29

ここの色も #7cc28e ではなく #b9d08b にしたいから、 Sass から引っ張ってくるようにするといいかも