ช่วยเลือกไวยากรณ์สำหรับการซ้อนกันของ CSS

หลังจากทำแบบสำรวจก่อนหน้านี้เพื่อช่วยเลือกไวยากรณ์สำหรับการฝัง CSS กลุ่มทำงาน CSS ได้ถกเถียงกันต่อเกี่ยวกับวิธีที่ดีที่สุดในการกำหนดการฝังใน CSS ในระหว่างการสนทนา มีการเสนอแนวคิดใหม่ๆ เกี่ยวกับไวยากรณ์ เรามีแบบสํารวจใหม่เพื่อช่วยกลุ่มทํางานเลือกระหว่างไวยากรณ์เหล่านี้

ตัวเลือก

จากผลการสำรวจก่อนหน้านี้ เราจะไม่พิจารณาตัวเลือกที่ 1 และ 2 อีกต่อไป เพิ่มตัวเลือกใหม่ 2 รายการ (4 และ 5)

ตัวเลือกที่ 5: คอนเทนเนอร์ที่ฝังระดับบนสุด

แสดงกฎ @nest ระดับบนสุดซึ่งมีบล็อก & { … } ที่มีประกาศและกฎสไตล์ที่ฝังอยู่หลายรายการ

@nest selector {
  & {
    property: value;
  }
  nested-selector {
    property: value;
  }
}

ตัวเลือกที่ 4: ข้อเสนอแบบเติมข้างหลัง

ระบบจะแทรกบล็อกโค้ดพิเศษที่มีกฎที่ฝังอยู่หลังกฎหลักซึ่งมีประกาศ

selector {
  property: value;
} {
  nested-selector {
    property: value;
  }
}

ตัวเลือกที่ 3: พร็อพเพอร์ตี้เริ่มต้นที่ไม่ใช่ตัวอักษร

กฎที่ฝังอยู่ทุกข้อต้องไม่คลุมเครือในตัวของมันเอง โดยกำหนดให้ต้องขึ้นต้นด้วยอักขระที่ไม่ใช่สัญลักษณ์ คุณสามารถเขียน & div หรือ :is(div) ได้หากต้องการเริ่มต้นตัวเลือกด้วยตัวเลือกประเภท

selector {
  property: value;
  & nested-selector {
    property: value;
  }
}

แม้ว่าตัวอย่างข้างต้นมีไว้เพื่อแสดงข้อมูลเบื้องต้นของข้อเสนอแต่ละรายการเท่านั้น แต่ก็มีตัวอย่างอื่นๆ อีกมากมายรวมอยู่ในแบบสํารวจใหม่

ลงคะแนนโหวต

หากต้องการลงคะแนนเสียง ให้ไปที่ https://webkit.org/blog/13607/ การลงคะแนนเสียงไม่จำเป็นต้องลงทะเบียน ให้เลือก "ตัวเลือกที่ 5" "ตัวเลือกที่ 4" หรือ "ตัวเลือกที่ 3" แล้วกด "ส่ง"

ลงคะแนนเสียงเลย