การขยายแบบลูกโซ่ใน @extend ใน SASS
คำสั่ง @extend ยังสนับสนุน
การขยายแบบลูกโซ่ (ต่อเนื่อง) นั่นคือ
ซีเลกเตอร์สามารถถูกขยายโดยซีเลกเตอร์อื่นได้
ซึ่งซีเลกเตอร์นั้นก็ถูกขยายโดยซีเลกเตอร์ที่สาม
อีกต่อหนึ่ง ตัวอย่างเช่น:
ลองพิจารณาตัวอย่าง:
.warning {
border: 1px solid;
background-color: #ffd900;
}
.personalWarning {
@extend .warning;
border-width: 3px;
}
.systemWarning {
@extend .personalWarning;
position: center;
}
ดังที่เราเห็นจากผลการคอมไพล์
องค์ประกอบทั้งหมดที่มีคลาส .systemWarning
จะมีสไตล์ของคลาส .warning และ
.personalWarning ด้วย:
.warning, .personalWarning, .systemWarning {
border: 1px solid;
background-color: #ffd900;
}
.personalWarning, .systemWarning {
border-width: 3px;
}
.systemWarning {
position: center;
}
บอกหน่อยว่าผลการคอมไพล์จะเป็นอย่างไร สำหรับโค้ดต่อไปนี้:
div {
font-size: 10px;
color: #181402;
}
.main-block {
@extend div;
border: 2px solid orange;
}
#warning-text {
@extend .main-block;
margin-top: 10px;
}
บอกหน่อยว่าผลการคอมไพล์จะเป็นอย่างไร สำหรับโค้ดต่อไปนี้:
p {
padding: 10px;
}
.main-text {
font-weight: 800px;
}
.card {
@extend p;
color: #021338;
}
.product-card {
@extend .card, .main-text;
font-size: 12px;
}
บอกหน่อยว่าผลการคอมไพล์จะเป็นอย่างไร สำหรับโค้ดต่อไปนี้:
p {
padding: 5px;
}
.main-text {
@extend p;
font-size: 14px;
}
.card {
@extend .main-text;
border: 1px solid black;
}
.product-card {
@extend .card;
background-color: #e1f1f1;
}