[0919 TIL]scssについて


ネストされた文のサポート

.container {
  display: flex;
  .item {
    background-color: red;
    > span {
      background-color: blue;
      &:hover {
        background-color: green;
      }
    }
  }
}
これらのscssは以下のように変更できます.
.container {
  display: flex;
}
.container .item {
  background-color: red;
}
.container .item > span {
  background-color: blue;
}
.container .item > span:hover {
  background-color: green;
}

&演算子


&演算子は、親の親タグを取得します.
従って、前に見た&:hoverspan:hoverと確認できる.

$演算子


$変数を作成して再利用可能にします.
.container {
  .content {
    $size: 200px;
    width: $size;
    height: $size;
    @at-root .header {
      width: $size;
    }
  }
}
有効範囲は宣言の中かっこ内です.
定義された変数を使用したいがrootを定義したい場合は、@at-rootを使用します.これは一番上のヘッダファイルに適用されます.

!global


既存の書き込みのルート変数を上書きできることに注意してください.
.box-a {
  // !는 flag라고 부르며 글로벌이다.
  $h: 200px !global;
  width: $w;
  height: $h;
  margin: $w;
}
!default
$primary: blue;
.box {
  $primary: orange !default;
}
既存の割当ての値が変数にある場合は、割当ての値が使用されます.