假設您希望自己的內容佔用視口高度的100%
。您以前必須將html
和body
元素的高度設置爲100%
。通過這種方式,你可以給body
元素的百分比高度的直接後裔,以及像這樣:默認情況下Chrome身體和html高度爲100%
<head>
<style>
html, body { height: 100% }
body { margin: 0; }
header, footer { height: 10% }
main { height: 80% }
<style>
</head>
<body>
<header>Intro</header>
<main>The Main Stuff</main>
<footer>Additional Details</footer>
</body>
的html, body { height: 100% }
聲明不再需要設置在Chrome中直接後裔的百分比高度。但是,它仍然需要在Firefox中。
這是2月初發布的Chrome最新更新中的一個錯誤嗎?或者height
現在默認設置爲100%
?
只是爲了澄清,我並沒有問如何實施基於百分比的佈局。我更多地詢問Chrome實現body
和html
元素的默認高度。這可能是非常容易混淆新手開發人員誰可能會認爲,html
和body
不需要明確定義的高度,如果他們希望body
的直系後裔有基於百分比的高度。
這真的取決於瀏覽器。您最安全的選擇是,如果您必須使用百分比高度,則需要在父級上定義高度。否則,一個更簡單的替代方案就是'main {height:80vh; }'和'header,footer {height:10vh; }'。 –