CSS在Chrome中工作但不在Firefox中工作(div高度)

时间:2012-05-15 18:38:55

标签: html css firefox google-chrome

我一直在建立一个网站,并主要在Chrome中进行测试。 最近我意识到一些CSS不适用于Firefox。

我想这可能是:主{min-height}

这个jFiddle重现了这个错误,其中主div没有它应该具有的高度。 http://jsfiddle.net/msW9m/

HTML:

<div id='main'></div>
<div id="container"></div>
<div id='footer'>
    <div id='footerRelative'>Development by <a href='mailto:'>John Doe</a></div>
</div>​

CSS:

#main {
    min-height: 80%;
    height: auto;
    border: 1px solid #bbbbbb;
    margin: 3% 5% 1%;
    padding: 10px 10px;
}
#footer {
    position: absolute;
    left: 50%;
}
#footerRelative {
    position: relative;
    left: -50%;
    font-size: 80%;
}
/*Probably Irrelevant*/
#container {
    margin: 0 auto;
    margin-top: -300px;
    margin-left: -261px;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 523px;
    height: 600px;
    background-image: url('../images/doctorSymbol.jpg');
    background-repeat:no-repeat;
    background-position:center;
    opacity: 0.125;
    overflow: hidden;
    z-index: -1;
}

然而,在Chrome中一切都很完美,主div的最小高度为80%。我想知道是否有解决方法,或者我做错了什么。

谢谢。

3 个答案:

答案 0 :(得分:8)

你有没有试过制作身体和HTML 100%? 在某些浏览器中,body元素在其内容已满之前不会保持100%的高度。

http://jsfiddle.net/HRKRN/

html, body {
    height: 100%;
}

答案 1 :(得分:2)

这也是一个可行的解决方案:将div的显示设置为table-cell

答案 2 :(得分:0)

使用CSS3解决此问题

http://pastebin.com/Q8727Kvt

Align vertically using CSS 3