這是一個謎題。基本的頁面,一個元素:爲什麼嵌套的HTML元素會讓我的CSS跳轉?
HTML:
<div id="container"></div>
CSS:
body, html {
height: 100%;
margin: 0;
padding: 0;
background-color: black;
}
#container {
position: relative;
margin: 0 auto;
width: 400px;
height: 100%;
background-color: #666;
}
這一個看起來我怎麼想,與#container的整齊齊平頂端。但是,當我添加一個嵌套元素:
HTML:
<div id="container">
<nav id="topnav"></nav>
</div>
CSS(新):
#topnav {
width: 100%;
height: 40px;
margin: 30px 0;
background-color: red;
}
容器跳下來。似乎從#topnav的邊緣頂部以某種方式傳遞給容器,現在該頁面有一個我不想要的滾動條。 (我正在Chrome中進行測試。)我如何防止這種情況發生?
(作爲進一步的謎,如果我添加border: 1px solid white;
到#集裝箱的CSS,跳躍消失。這將是罰款,但還增加了兩個象素值得不良滾動到頁面。)
您正在爲已經100%高的項目添加保證金。改爲使用填充。 – 2012-03-01 15:40:23
@Diodeus導航不是100%的高度,容器是。該容器沒有聲明的垂直邊距。 – Blazemonger 2012-03-01 15:46:31