Tôi đang cố gắng đặt div đến một tỷ lệ phần trăm nhất định trong CSS
Tỷ lệ phần trăm là gì?
Để đặt chiều cao phần trăm, phần tử cha của nó (*) phải có chiều cao rõ ràng. Điều này khá rõ ràng, ở chỗ nếu bạn để lại chiều cao auto
, khối sẽ lấy chiều cao của nội dung của nó ... nhưng nếu nội dung đó có chiều cao được biểu thị theo tỷ lệ phần trăm của phụ huynh mà bạn tự tạo ra một chút Bắt 22. Trình duyệt bỏ cuộc và chỉ sử dụng chiều cao nội dung.
Vì vậy, cha mẹ của div phải có một thuộc tính rõ ràng height
. Trong khi chiều cao đó cũng có thể là một tỷ lệ phần trăm nếu bạn muốn, điều đó chỉ giúp chuyển vấn đề lên cấp độ tiếp theo.
Nếu bạn muốn làm cho chiều cao div thành một tỷ lệ phần trăm của chiều cao khung nhìn, mọi tổ tiên của div, bao gồm <html>
và <body>
, phải có height: 100%
, do đó, có một chuỗi các tỷ lệ phần trăm rõ ràng xuống tới div.
(*: hoặc, nếu div được định vị, 'khối chứa', là tổ tiên gần nhất cũng được định vị.)
Ngoài ra, tất cả các trình duyệt hiện đại và IE> = 9 đều hỗ trợ các đơn vị CSS mới liên quan đến chiều cao khung nhìn ( vh
) và chiều rộng khung nhìn ( vw
):
div {
height:100vh;
}
Xem ở đây để biết thêm .
height
với các giá trị tỷ lệ phần trăm: stackoverflow.com/a/31728799/3597276