คุณสมบัติ CSS ที่ไม่รองรับและวิธีแก้ไขทดแทน
ภาพรวมโดยย่อ
หัวข้อที่มีชื่อว่า “ภาพรวมโดยย่อ”เอนจิน writeHtml เรนเดอร์เนื้อหาแบบเดินหน้าในรอบเดียวและไม่จัดวางเนื้อหาก่อนหน้าใหม่ พฤติกรรมบางอย่างของ Cascading Style Sheets (CSS) จึงไม่สอดคล้องกับโมเดลนี้ หน้านี้แสดงรายการพฤติกรรมเฉพาะที่เอนจินไม่นำมาใช้ พร้อมวิธีแก้ไขทดแทนที่รองรับสำหรับแต่ละรายการ สำหรับสถานะการตรวจสอบยืนยันแยกตามโมดูล โปรดอ่านเมทริกซ์การรองรับ CSS
ข้อจำกัดเหล่านี้มีขอบเขตชัดเจนและไม่ใช่แผนงานในอนาคต แต่ละรายการระบุพฤติกรรมที่ไม่รองรับอย่างเจาะจง ไม่ได้หมายถึงพร็อพเพอร์ตีทั้งรายการ
พฤติกรรมที่ไม่รองรับ
หัวข้อที่มีชื่อว่า “พฤติกรรมที่ไม่รองรับ”| พฤติกรรม | สิ่งที่ไม่ถูกนำมาใช้ | วิธีแก้ไขทดแทน |
|---|---|---|
การจัดวางแบบ offset ของ position: absolute / position: relative | เอนจินวางกล่องตามลำดับในเอกสาร ค่า offset top/right/bottom/left สำหรับย้ายกล่องที่จัดตำแหน่งไว้ออกจากการไหลปกติจะไม่ถูกนำมาใช้ การจัดตำแหน่งแบบ static ทำงานได้ | ใช้ตารางหรือ flex ภายในการไหลปกติเพื่อจัดวาง |
grid-template-areas แบบมีชื่อ | เอนจินไม่ใช้การวางตำแหน่งด้วย named grid areas การวางกริดด้วยเส้นที่ระบุชัดเจนทำงานได้ | วางไอเทมด้วยเส้นกริดที่ระบุชัดเจน หรือใช้ตาราง |
rowspan ข้ามการแบ่งหน้า (ลดทอนลง) | เซลล์ rowspan เรนเดอร์บนหน้าเดียว เมื่อตารางถูกแบ่งหน้า เซลล์ที่ขยายข้ามขอบเขตหน้าจะถูกแยกเป็นส่วนตามที่อธิบายไว้ใน Architectural Decision Record (ADR-007) และเซลล์ที่สูงเกินกว่าที่จะแยกได้จะทำให้เกิด UnsplittableContentException | สำหรับกลุ่มแถวที่ต้องคงอยู่เป็นกลุ่มระหว่างการแบ่งหน้า ให้ใช้แถว float หรือแถวส่วนหัวหมวดหมู่แทน rowspan ที่สูง |
ลำดับการวาดพื้นหลังของ overflow: hidden | overflow: hidden ไม่เปลี่ยนลำดับการวาดพื้นหลัง และไม่ครอบตัดพื้นหลังของเอลิเมนต์ลูกให้เข้ากับกล่องของเอลิเมนต์บรรพบุรุษที่มีมุมโค้งหรือกำหนดขนาดไว้ | กำหนดพื้นหลังบนเอลิเมนต์ที่รับผิดชอบการครอบตัด หรือหลีกเลี่ยงการพึ่งพาพื้นหลังที่ถูกครอบตัด |
| ข้อความที่ตัดบรรทัดแบบเรียงเคียงข้างในไอเทม flex | ไอเทม flex ที่มีข้อความซึ่งต้องตัดบรรทัดจะล้นออกนอกแทร็กแทนที่จะตัดบรรทัดภายในแทร็ก | ใช้ตารางสองคอลัมน์ที่ระบุความกว้างคอลัมน์เป็นพิกเซลอย่างชัดเจน |
| ความกว้างคอลัมน์แบบเปอร์เซ็นต์ที่คำนวณได้เป็นศูนย์ | เมื่อ width คอลัมน์แบบ % ไม่มีฐานสำหรับคำนวณ ค่าจะถูกแปลงเป็น 0 และทำให้เกิดคำเตือนว่าคอลัมน์ถูกบีบ | กำหนดความกว้างเป็นพิกเซลอย่างชัดเจนให้กับคอลัมน์ที่วางเคียงข้างกัน |
ดูเพิ่มเติม
หัวข้อที่มีชื่อว่า “ดูเพิ่มเติม”- เมทริกซ์การรองรับ CSS — สถานะการตรวจสอบยืนยันแยกตามโมดูลและคุณสมบัติที่รองรับ
- HTML: ระบบย่อยการเรนเดอร์ HTML+CSS เป็น PDF — โมเดลแบบรอบเดียวที่เป็นพื้นฐานของข้อจำกัดเหล่านี้
- จัดวางตารางใน HTML — รูปแบบตารางที่ใช้แทนการจัดตำแหน่งแบบ offset และข้อความที่ตัดบรรทัดใน flex