SASS의 @at-root 디렉티브
@at-root 디렉티브는 규칙을 부모 선택자에서
파일의 루트로 추출하기 위해 설계되었습니다.
첫 번째 레벨 중첩 선택자를 가진 다음 예제를 살펴보겠습니다:
.parent {
background-color: #fdd;
@at-root .child {
border: 1px solid;
}
}
컴파일 결과로 다음과 같은 코드가 생성되었습니다:
.parent {
background-color: #fdd;
}
.child {
border: 1px solid;
}
이제 여러 선택자에 대한
@at-root 디렉티브의 동작을 살펴보겠습니다:
.main-parent {
background-color: #fdd;
@at-root {
.first-child {
border: 1px solid;
}
.second-child {
font-weight: bold;
}
}
.step-child {
color: #232523;
}
}
컴파일 후 코드는 다음과 같습니다:
.main-parent {
background-color: #fdd;
}
.first-child {
border: 1px solid;
}
.second-child {
font-weight: bold;
}
.main-parent .step-child {
color: #232523;
}
다음 코드의 컴파일 결과가 어떻게 될지 설명해 보세요:
.primary-button {
background-color: #3272c7;
@at-root {
.block-button {
color: #ff0000;
}
.content-button {
color: #ccb42a;
}
}
.warning-button {
border: 2px solid #232523;
}
}