ไดเรกทีฟ @at-root ใน SASS
ไดเรกทีฟ @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;
}
}