환경 구성

@euid/scss-mixins 라이브러리를 구성하는 환경 변수

구성 변수

@euid/scss-mixins 패키지의 _config.scss 파일에는 패키지의 유틸리티 함수, 믹스인의 설정을 변경할 수 있는 변수를 제공합니다. 필요한 경우, 사용자는 각 변수 값을 설정 조정해 사용할 수 있습니다.

단위 설정

em , rem 값의 기준이 되는 기본 값을 조정해 사용할 수 있습니다. (기본 값: 16px)

$base-em-size: 16px;
$base-rem-size: 16px;

설정된 단위 값은 em(), rem() 함수의 기본 단위 값으로 사용됩니다.

@debug em(16px); // → 1em 반환
@debug rem(16px); // → 1rem 반환

컬러 설정

컬러 스킴(Color Scheme, 색 구성표)을 컬러-이름: 값 형태로 추가해 활용할 수 있습니다.

$colors: (
  red: #e50914,
  vivid-red: #ff000d,
  blue: #0071eb,
  black: #010101,
  darkGray: #303030,
  gray: #757575,
  lightGray: #b5b5b5,
  white: #ffffff,

  state-normal: #707070,
  state-hover: #35a1af,
  state-focus: #1870d4,
  state-active: #185158,
  state-disabled: #dedede,
  state-valid: #219c5e,
  state-invalid: #e72e6c,
);

컬러 스킴에 등록된 컬러 값은 getColor() 함수를 사용해 추출할 수 있습니다.

박스 정렬 설정

justify-*, align-* 대신, place-* 속성 사용하고자 할 경우 true 값을 설정합니다.

place-items, place-content, place-self 속성은 justify-items, align-items와 같이 CSS Grid, Flexbox 레이아웃에서 사용되는 박스 정렬 속성을 단축해 사용할 수 있는 속기형 속성입니다.

커스텀 이징 설정

ease() 유틸리티 함수에서 사용 할 수 있는 커스텀 이징 키워드, 이징 함수를 등록 설정합니다. (ease-merge() 활용)

중단점 설정

반응형 웹 디자인의 중단점(breakpoints)으로 사용할 키워드와 값을 임의로 추가 설정할 수 있습니다. (API 참고)

em() 함수를 사용하면 px 수치 값을 손쉽게 em 단위(16px 기준)로 변경할 수 있습니다. 등록된 중단점 키워드는 아래와 같이 media() 믹스인에서 사용할 수 있습니다.

등록된 키워드는 다음과 같이 CSS 코드로 컴파일 됩니다. (단위는 em으로 설정 됨)

미디어 표현식 설정

미디어 쿼리(media-quries)를 손쉽게 사용하기 위한 키워드와 값을 임의로 추가 설정할 수 있습니다. (API 참고)

등록된 미디어 쿼리 표현식 키워드는 아래와 같이 media() 믹스인에서 사용할 수 있습니다.

사용된 키워드는 표준 CSS 미디어 쿼리로 컴파일 됩니다.

미디어 쿼리 사용 설정

미디어 쿼리를 사용한 코드를 컴파일 하고 싶지 않을 경우 false 값을 설정할 수 있습니다. (API 참고)

에뮬레이트 중단점 설정

미디어 쿼리 지원이 비활성화 된 경우, 에뮬레이트 할 중단점을 설정합니다. (API 참고)

"미디어 퀴리를 사용하지 않음"으로 설정하면 모든 미디어 쿼리 구문이 컴파일되지 않습니다.

하지만 특정 중단점에 해당되는 코드는 남기고 싶을 수 있습니다. 이런 경우 에뮬레이트 중단점을 설정합니다.

에뮬레이트 중단점 보다 큰 스크린 너비의 미디어 쿼리 문은 코드를 컴파일 하지 않습니다.

하지만 에뮬레이트 중단점을 포함한 작은 너비의 미디어 쿼리문은 코드를 컴파일 합니다. 단, @media 구문이 생성되는 것이 아니라, 컴파일 된 코드가 병합됩니다. (즉, 코드가 추가될 뿐입니다)

참고

@euid/scss-mixins 패키지는 내부적으로 include-media 믹스인 라이브러리를 활용합니다.

Last updated

Was this helpful?