當使用IE或FF時,我的DIV(用作導航)未使用高度:100%。 Chrome工作正常。Chrome vs IE/FF CSS高度100%問題
- 我做了研究,並嘗試在不同的和多個DIV上使用
position: absolute;
,但是這從來沒有爲我修復過。 - 在我看來,body和html height設置爲100%(
html, body { height: 100%; }
)。 - Clearfix不適用於我(stackoverflow - clearfix)。使用
overflow: hidden;
不能幫助我。
我真的很想理解這個問題,我真的試着在做研究的時候不打擾,但我不明白。以下:的jsfiddle,CSS & HTML代碼,2個截圖(Chrome和FF)
的jsfiddle:http://jsfiddle.net/nqsto6r9/4/
我的CSS:
body, html {
height: 100%;
min-width: 1280px;
width: 100%;
}
body { margin: 0 auto; }
button {
margin-left: 5px;
margin-right: 5px;
width: 154px;
}
input {
margin-left: 5px;
margin-right: 5px;
padding-left: 5px;
padding-right: 5px;
width: 140px;
}
select {
margin-left: 5px;
margin-right: 5px;
width: 154px;
}
#content {
background-color: #FFFFFF;
float: left;
width: calc(100% - 170px);
}
#content_header {
background-color: #4C587E;
height: 25px;
width: 100%;
}
#header {
background-color: #3761A7;
float: left;
width: 100%;
}
#header_span {
float: left;
margin-bottom: 20px;
margin-left: 20px;
margin-top: 20px;
}
#inner_content {
max-width: 1024px;
float: left;
margin-bottom: 0.5cm;
margin-left: 0.5cm;
margin-right: 0.5cm;
margin-top: 0.5cm;
width: calc(100% - 1cm);
}
#nav {
float: left;
line-height: 1.5em;
padding-bottom: 5px;
padding-left: 10px;
padding-right: 10px;
padding-top: 30px;
width: 150px;
}
#wrapper {
float: left;
height: 100%;
width: 100%;
display: table;
}
#wrapper_nav {
background-color: #C0C0C0;
float: left;
height: 100%;
min-height: 450px;
width: 170px;
}
我的HTML:
<div id="header">
<span id="header_span" class="header_h1"></span>
</div>
<div id="wrapper">
<div id="wrapper_nav">
<div id="nav">
<a href=".html" class="nav_links">1</a><br />
<hr>
<a href=".html" class="nav_links">2</a><br />
<hr>
<a href=".html" class="nav_links">3</a>
</div>
</div>
<div id="content">
<div id="inner_content">
asda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
adasda<br>
</div>
</div>
</div>
瀏覽器(我想):
火狐(我需要解決什麼):
謝謝意見。
更新
現在使用CSS display Property &去了解它...
UPDATE2 - 解決方案
有人給我發,我嘗試過了解jsfiddle。我需要改變:
#content {
background-color: #FFFFFF;
float: left;
width: calc(100% - 170px);
}
#wrapper {
float: left;
height: 100%;
width: 100%;
display: inline-block;
}
#wrapper_nav {
background-color: #C0C0C0;
float: left;
height: 100%;
min-height: 450px;
width: 170px;
}
到
#content {
background-color: #FFFFFF;
display: table-cell;
vertical-align: top;
}
#wrapper {
float: left;
height: 100%;
width: 100%;
display: table;
}
#wrapper_nav {
background-color: #C0C0C0;
display: table-cell;
vertical-align: top;
width: 170px;
}
我認爲這也是錯誤的Chrome。左邊的導航是100%高的,但是那個元素在標題欄下面,所以你佔用的空間比你的視口更多。我建議只使用JavaScript計算。 – Halcyon
我總是希望灰色的導航背景是100%的高度,即使我在那裏只有3個條目。我希望我能理解你。 – Yaerox
我不認爲這就是你想要的。你希望左側的導航欄填寫頁面的_remainder_,這不是'height:100%'所做的事情。 – Halcyon