ฉันกำลังพยายามตั้งค่า div เป็นความสูงที่แน่นอนใน CSS
เปอร์เซ็นต์ของอะไร
ในการตั้งค่าความสูงเป็นเปอร์เซ็นต์องค์ประกอบหลัก (*) จะต้องมีความสูงอย่างชัดเจน นี่เป็นสิ่งที่เห็นได้ชัดในตัวเองถ้าคุณปล่อยให้ความสูงเป็นauto
บล็อกจะใช้ความสูงของเนื้อหา ... แต่ถ้าเนื้อหานั้นมีความสูงที่แสดงในรูปของร้อยละของผู้ปกครองคุณทำให้ตัวเองน้อย Catch 22. เบราว์เซอร์ยอมแพ้และใช้ความสูงของเนื้อหา
ดังนั้นพาเรนต์ของ div ต้องมีheight
คุณสมบัติที่ชัดเจน ในขณะที่ความสูงนั้นสามารถเป็นเปอร์เซ็นต์ได้ถ้าคุณต้องการนั่นก็แค่เลื่อนปัญหาขึ้นไปอีกระดับ
หากคุณต้องการทำให้ div ความสูงเป็นเปอร์เซ็นต์ของความสูงวิวพอร์ตทุกบรรพบุรุษของ div รวมถึง<html>
และ<body>
จำเป็นต้องมีheight: 100%
ดังนั้นจึงมีสายโซ่ของความสูงร้อยละที่ชัดเจนถึง div
(*: หรือหาก div อยู่ในตำแหน่ง 'บล็อกที่มี' ซึ่งเป็นบรรพบุรุษที่ใกล้ที่สุดที่จะถูกจัดตำแหน่งด้วย)
หรือเบราว์เซอร์สมัยใหม่และ IE> = 9 รองรับหน่วย CSS ใหม่ที่สัมพันธ์กับความสูงของวิวพอร์ต ( vh
) และความกว้างของวิวพอร์ต ( vw
):
div {
height:100vh;
}
ดูที่นี่สำหรับข้อมูลเพิ่มเติม
height
คุณสมบัติCSS พร้อมค่าเปอร์เซ็นต์: stackoverflow.com/a/31728799/3597276