我的网页出现问题。
我正在使用min-height属性将页脚放在页面底部(如果内容不够长)和内容之后(如果内容长于窗口)。有很多教程描述了这种方法,我也是这样做的。
html, body { height: 100%; }
.container {
min-height: 100%;
position: relative;
}
.footer {
position: absolute;
bottom: 0;
}
和其他一些代码。它工作正常。
当我创建两个额外的div来向容器div添加阴影时,会出现问题。我有:
<div class="left-shadow">
<div class="right-shadow">
<div class="container">
...
</div>
</div>
<div>
我认为html和身高保持100%,左阴影div的最小高度为100%,右阴影和容器的高度为100%(我假设100%意味着100%的父元素的高度。)
然而,它不起作用(在Firefox中,它适用于Chrome,我并不真正关心IE),并且我已经尝试了各种组合以使其正确,但无济于事。任何帮助将不胜感激。
编辑:(部分代码)
<html>
<head>
...
</head>
<body>
<div class="left-shadow">
<div class="right-shadow">
<div class="container">
<div class="header">
header content
</div>
<div class="content" >
content goes here
</div>
<div class="footer">
footer content here
</div>
</div> <!-- end container div -->
</div>
</div>
</body>
</html>
相关的css:
html {
overflow-y: scroll;
height: 100%;
}
body {
margin: 0 0 0 0;
height:100%;
}
.left-shadow
{
width: 1084px;
background: url("images/left-shadow.png") repeat-y left;
/* both bg images are 30px wide. 1024 + 30 + 30 = 1084px */
margin: auto;
min-height: 100%;
}
.right-shadow
{
width: inherit;
background: url("images/right-shadow.png") repeat-y right;
margin: auto;
height: 100%;
}
.container {
position: relative;
margin-left: auto;
margin-right: auto;
margin-bottom: 0;
width: 1024px;
height: 100%;
}
编辑2: 所以我发现这个问题属于doctype。所以从现在开始,我会在正确的地方提问。但是既然已经有了这个问题,我会要求人们在没有进入问题的情况下做出回应。感谢。
答案 0 :(得分:1)
首先,使用CSS创建阴影效果。如果CSS解决方案不是您正在寻找的,那么可能尝试将阴影设置为.container
的背景图像。现在你的标记因不必要的元素而过载。
但如果额外的加价是你想做的唯一方法,那么尝试这样的事情:
* {
margin: 0;
padding: 0;
}
html, body, .shadow, #container {
min-height: 100%;
}
#container {
position: relative;
}
#content {
padding-bottom: 55px;
}
#footer {
position: absolute;
bottom: 0;
width: 100%;
height: 50px;
background: #0a0;
}
HTML标记(这些 shadow divs 让它看起来很糟糕):
<body>
<div id="shadow-left" class="shadow">
<div id="shadow-right" class="shadow">
<div id="container">
<div id="content">
Page contents
</div>
<div id="footer">
Footer
</div>
</div>
</div>
</div>
</body>
答案 1 :(得分:0)
我真的建议使用这个简单的解决方案来代替“粘性页脚”。摆脱问题:http://ryanfait.com/sticky-footer/
它所需要的只是让你能够为你的页脚定义一个固定的高度,几乎在所有情况下都应该没问题。
适用于所有常见浏览器!