SCSS로 더 쉽고 스타일링

9435 단어 SassCSSscss
SCSS에 @mixin 을 사용하면 클래스를 정의할 수 있습니다.

@mixin 정의
@mixin themable($theme-name,container-bg,$left-bg,$right-bg,$innertext,$button-bg){
    .#{$theme-name}{
        .container{
            background-color:$container-bg;
            border:1px solid #000;
            display:flex;
            justify-content:space-between;
            margin:0 auto;
            width:50%;
        }

        *{
            color:$innertext;
            font-size:1rem;
        }

        .left {
            background-color: $left-bg;
            height: 100%;
            width: 69%;
        }

        .right {
            background-color: $right-bg;
            height: 100%;
            position: relative;
            width: 29%;
        }

        .button {
            background-color: $button-bg;
            border: 0;
            border-radius: 10px;
            bottom: 10px;
            cursor: pointer;
            font-size: 1rem;
            font-weight: bold;
            padding: 1em 2em;
            position: absolute;
            right: 10px;
        }

        input{
            outline:none;
            background:none;
            border:none;
            border-bottom:1px solid white;
            box-shadow:none;
        }
    }
}

이제 themable이라는 클래스를 정의할 수 있었습니다.

그럼, @include 로 실제로 themable 를 정의해 보겠습니다.

@include로 mixin 상속
@include themable(dark-theme,#898989,#454545,#252525,#ffffff,#e5e5e5);
@include themable(light-theme,#ffffff,#ffa3a3,#ffa3d1,#000000,#ffd1a3);

dark-theme
<body class="dark-theme">
  <div class="container ">
    <div class="left d-flex justify-content-center align-items-center">
      <span>LEFT</span>
    </div>
    <div class="right d-flex flex-column justify-content-center ">
      <span class="align-self-center">RIGHT</span>
      <button class="button">BUTTON</button>
    </div>
  </div>
</body>



light-theme
<body class="light-theme">
  <div class="container ">
    <div class="left d-flex justify-content-center align-items-center">
      <span>LEFT</span>
    </div>
    <div class="right d-flex flex-column justify-content-center ">
      <span class="align-self-center">RIGHT</span>
      <button class="button">BUTTON</button>
    </div>
  </div>
</body>


dark-theme과 light-theme로 선언하기만 하면 쉽고 스타일링할 수 있습니다.

이것에 의해 디사인 트렌드의 다크 모드도 간편하게 구현할 수 있습니다.
여러분도 꼭 일상적인 프런트 설계나 코딩 중에 SCSS(또는 SASS)를 사용해 보세요!

좋은 웹페이지 즐겨찾기