ตัวเลือกตามความสัมพันธ์ในการซ้อนกันของ SASS

มาดูกันว่าใน SASS เมื่อมีการซ้อนกัน จะเพิ่มตัวเลือกต่างๆ ที่เลือกองค์ประกอบตามความสัมพันธ์อย่างไร ดูตัวอย่างด้านล่าง

ตัวอย่าง

ตัวเลือกลูกโดยตรง (Child selector):

styles.scssdiv {
  > p {
    color: red;
  }
}

ผลลัพธ์หลังคอมไพล์:

styles.cssdiv > p {
  color: red;
}

ตัวอย่าง

ตัวเลือกพี่น้องติดกัน (Adjacent sibling selector)

styles.scssdiv {
  + p {
    color: red;
  }
}

ผลลัพธ์หลังคอมไพล์:

styles.cssdiv + p {
  color: red; 
}

ตัวอย่าง

ตัวเลือกพี่น้องทั่วไป (General sibling selector):

styles.scssdiv {
  ~ p {
    color: red;
  }
}

ผลลัพธ์หลังคอมไพล์:

styles.cssdiv ~ p {
  color: red;
}

แบบฝึกหัด

Задание 1

บอกหน่อยว่าผลลัพธ์หลังคอมไพล์ของโค้ดต่อไปนี้จะเป็นอย่างไร:

styles.scssul {
  color: red;
  
  > li {
    padding: 20px;
  }
}
Задание 2

บอกหน่อยว่าผลลัพธ์หลังคอมไพล์ของโค้ดต่อไปนี้จะเป็นอย่างไร:

styles.scssdiv {
  ul {
    > li {
      padding: 20px;
    }
  }
}