KSCOLD LogoKSCOLD
Blog
Feed
Product
Admin Night
Vault
Guestbook
Info

Vault 목록

$(Argument)

연결된 노트와 함께 읽기

$(Argument)

2026년 6월 22일
  • @mixin의 인자에도 기본값을 할당할 수 있다.

  • 기본값은 인자가 전달되지 않았을 경우 사용된다.

문법

  • 인자는 콜론 :을 사용하여 $매개변수:값의 형태로 표기한다.
SCSS
  • 인자에 기본값을 할당하면, 인자는 optional하게 만들 수 있다.
SCSS
CSS
  • mixin의 세번째 인자인 $y가 optional 해졌다.
  • 그 결과로 background-position의 y축이 10%로 자동삽입 되었다.

키워드 인자

  • 키워드 인자는 인자를 명시적으로 전달할 수 있는 인자이다.

  • 문법은 기본값 작성하듯이 하는데, 인자를 전달할 때 사용한다는 차이점을 기억하자.

  • 처음 접근하면 자칫 헷갈릴 수 있다.

  • 키워드 인자의 장점은 기존 인자는 선언 순서대로 지정했던 것에 비해서 인자를 전달하는 순서에 구애받지 않는다는 장점**이 있다.

SCSS
CSS
  • 키워드 인자는 인자의 이름으로 인수를 전달하기 때문에 mixin 인수의 이름을 변경할 때는 반드시 주의해야 한다.

가변 인자(임의 길이 인자

  • 인자의 갯수가 고정되어있지 않은 경우도 있다.
  • 이럴땐 인자 뒤에 ...을 붙임으로써 인자를 가변 인자로 만들어서 사용한다.
SCSS
CSS

Synapse Map Insight

@mixin default-args($props: width, $num: 100px) { #{$props}: $num; }
@mixin img-position($img, $x: 10%, $y: 10%) { background: { image: $img; position: $x, $y; } } .img { @include img-position(url("./a.img"), 20%); // mixin 호출 }
// 컴파일 결과 .img { background-image: url("./a.img"); background-position: 20% 10%; }
@mixin box-style($width: 100px, $height: 50px, $color: red) { width: $width; height: $heigth; background-color: $color; } /* mixin을 include하는 부분을 주목 */ .box { @include box-style($color: blue, $height: 100px); }
// 컴파일 결과 .box { width: 100px; height: 100px; background-color: blue; }
@mixin margin-size($size...) { margin: $size; } .box1 { @include margin-size(0px, 0px, 0px, 0px); } .box2 { @include margin-size(0px, 0px, 0px); } .box3 { @include margin-size(0px, 0px); } .box4 { @include margin-size(0px); }
// 컴파일 결과 .box1 { margin: 0 0 0 0; } .box2 { margin: 0 0 0; } .box3 { margin: 0 0; } .box4 { margin: 0; }