0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

絶対に挫折しないScss(超丁寧)

Last updated at Posted at 2020-09-30

Scssとは?

SCSSとSASSは、Sass(Syntactically Awesome Style Sheets)というRuby製のCSSメタ言語です。メリットはたくさんありますので、利用者は多いです。プログラミング言語にかなり似ているので、変数やmixin,ループ処理も行えます。Cssでの記述量と比較すると半分程度で済むかもしれません。それぞれ、Scssで出来ることを説明していきますね。

ネスト構造(これはHTML構造に似てる)

style.css
header{
width:100%;
position:relative;
clear:both;
}

header h1{
float:left;
}

header.imformation{
float:right;
width:350px;
}

↓Scssだとこんなにコンパクトに記述出来るのです!

style.scss
header{
 width:100%;
 position:relative;
 clear:both;

 & h1{
 float:left;
 }

 &.imformation{
 float:right;
 width:350px;
 }
}

変数(プログラミング言語に近い感覚)

style.css
section h2{
color:#6cc6c4;
}

.text p{
border:1px solid #6cc6c4;
}

ul.top li > p{
background-color:#6cc6c4;
}
/*何度も色番号を手入力しないといけないのってめんどくさいですよね?*/
style.scss
/* 色番号を変数に代入してしまう=使い回しが何度でも可能だし、修正がしやすいですよね。
cssだけだと、全部書き直しもしくは、置換するしかない。 */
$color:#6cc6c4;

section h2{
color:$color;
}

.text p{
border:1px solid $color;
}

ul.top li > p{
background-color:$color;
}

mixin

style.scss
@mixin .maru{
border-radius:10px;
border:0.5px dashed #000;
}

div.bg{
@include .maru;
background-color:navy;
}

/*もしくは*/
.maru{
border-radius:10px;
border:0.5px dashed #000;
}

div.bg{
@extend .maru;
background-color:navy;
}
/*extendの場合、mixinを使用する必要が無い!*/

style.css
.maru{
border-radius:10px;
border:0.5px dashed #000;
}

div.bg{
border-radius:10px;
border:0.5px dashed #000;
background-color:navy;
}

ループ処理

style.scss
@for $j from 1 through 3 {
  /* #は文字列を表現しています。*/
  li:nth-child(#{$j}) {width: 10px * $i;}
}
style.css
li:nth-child(1){
width: 10px;
}

li:nth-child(2){
width: 20px;
}

li:nth-child(3){
width: 30px;
}

Scssの導入について

環境構築っていうやつです。ここで躓く方はいると思います。(私はここに3ヶ月くらい悩んでいました涙) 結論から申し上げると、visual studio codeを使っている方であれば、かなり容易です!!

❶まずやることは、vscodeをインストールしましょう。
(https://code.visualstudio.com/)

スクリーンショット 2020-09-30 15.07.42.png

❷インストールが終わったら、拡張機能であるLive Sass Compilerをインストールしてくる。

スクリーンショット 2020-09-30 15.14.10.png

❸アプリケーション下部に表示されているWatch Sassをクリックする。(写真だと、watching...に
なっている部分)

スクリーンショット 2020-09-30 15.17.35.png

❹拡張子が .scssのファイルを作成し、保存する。
スクリーンショット 2020-09-30 15.20.49.png
この時に、画面左下のWatch Sassをクリックすると、自動的にファイル名.css.mapファイルが
生成されます。

ーーーこれで、コンパイルという作業が終わり、Scssが、cssに自動的に変換されます。ーーー

スクリーンショット 2020-09-30 15.29.01.png
⬆︎ちなみに、HTMLファイルでScssファイルを読み込む場合ですが、必ず、コンパイルされたCssファイルを読み込んでください! 私は、Scssファイルを読み込んでおり、あれ?コンパイル上手くいってない?とプチパニックになりましたっけ笑
みなさんはすぐに出来ると思いますので、是非、挑戦してみてくださいね!

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?