使用液体/液体布局实现css粘性页脚时出现问题
我正在尝试实现CSS Sticky Footer方法,如中所示。(我也尝试过这个解决方案,但无济于事) 我对每件事都很了解,至少我认为我了解。我有一个容器使用液体/液体布局实现css粘性页脚时出现问题,css,html,footer,sticky-footer,Css,Html,Footer,Sticky Footer,我正在尝试实现CSS Sticky Footer方法,如中所示。(我也尝试过这个解决方案,但无济于事) 我对每件事都很了解,至少我认为我了解。我有一个容器div(他们称之为wrap),一个标志栏(他们称之为页眉)和一个页面div(他们称之为main),然后我有我的页脚 问题是,如果启用了overflow:auto,那么我会得到一个非常短的div和一个滚动条(讨厌)。但是如果我把它注释掉,我所有的内容都会显示出来,但是页面仍然认为div的大小与overflow:auto没有注释掉的大小相同 否则,
div
(他们称之为wrap),一个标志栏(他们称之为页眉)和一个页面div
(他们称之为main),然后我有我的页脚
问题是,如果启用了overflow:auto
,那么我会得到一个非常短的div
和一个滚动条(讨厌)。但是如果我把它注释掉,我所有的内容都会显示出来,但是页面仍然认为div
的大小与overflow:auto
没有注释掉的大小相同
否则,它将正常工作。页脚停留在底部,调整大小时,页脚停止在短页/maindiv
。有什么办法可以让我的内容见底吗?我应该提到,我不能为我的页面/maindiv
使用固定高度,因为我需要它根据它包含的div
的大小调整大小(以当时可见的为准)
可能是页脚造成了问题,也可能不是,无论如何,我都需要一些帮助来解决这个问题
HTML:
<body>
<div id="container">
<div id="logo">
<div id="home-flower"></div><!-- end home-flower -->
<div id="about-flower"></div><!-- end about-flower -->
<div id="proof-flower"></div><!-- end proof-flower -->
<div id="contact-flower" ></div><!-- end other-flower -->
</div><!-- end logo-->
<div id="page">
<div id="spacer"><br/></div><!-- end spacer -->
<div id="home">home</div><!-- end home -->
<div id="about">about</div><!-- end about -->
<div id="proof">proof of concept</div><!-- end proof -->
<div id="contact">contact</div><!-- end contact -->
</div><!-- end page -->
</div><!--end container-->
<div id="footer"> </div><!-- end footer -->
</body>
* {
margin:0px auto !important;
}
html, body {
height:100%;
}
#container {
width:800px;
background-color:#F0F;
min-height: 100%;
height: auto !important;
height: 100%;
}
#page{
width:100%;
min-height:100%;
position:relative;
background-color:#F00;
padding-bottom:75px;
/*overflow:auto;*/
}
#logo{
position:relative;
width:100%;
height:210px;
top:0px;
left:0px;
background:url(images/logo.png);
}
#home{
position:absolute;
width:100%;
height:100%;
top:0px;
left:0px;
visibility:visible;
}
#about{
position:absolute;
width:100%;
height:100%;
top:0px;
left:0px;
visibility:hidden;
}
#proof{
position:absolute;
width:100%;
height:100%;
top:0px;
left:0px;
visibility:hidden;
}
#contact{
position:absolute;
width:100%;
height:100%;
top:0px;
left:0px;
visibility:hidden;
}
#footer {
position:relative;
margin-top:-75px;
width:800px;
height:75px;
background-color:#C0F;
clear:both;
}
#spacer {
position:relative;
line-height:20px;
}
使用如何
<div id="footer">
This is footer text
</div><!-- end footer -->
页脚贴在页面底部
这就是你想要的吗。使用
<div id="footer">
This is footer text
</div><!-- end footer -->
页脚贴在页面底部
这就是你要找的。看起来我需要将
#home
,#about
,#proof
,以及#contact
divs的位置改为relative,而不是像我那样的绝对。然而,一旦我这样做了,它们就不再叠在一起了。关于如何使相对定位的div具有相同的(x,y)位置,以便它们正好位于彼此的顶部,有什么想法吗?我将每个div的顶部
和左侧
设置为0px
,但它们只是分层而不是堆叠…如果这有意义的话。看起来我需要更改主页
,关于
,证明
,的位置,和#contact
divs to relative而不是像我那样的绝对值。然而,一旦我这样做了,它们就不再叠在一起了。关于如何使相对定位的div具有相同的(x,y)位置,以便它们正好位于彼此的顶部,有什么想法吗?我将每个div的顶部
和左侧
设置为0px
,但它们只是将自己分层,而不是堆叠…如果这有意义的话。以前尝试过。然而,这使它保持在所有内容之上。我要找的是,如果内容没有延伸到查看区域之外,则将其保留在窗口底部;如果内容比查看区域长,则将其保留在内容的末尾。谢谢你的回答,我以前也试过。然而,这使它保持在所有内容之上。我要找的是,如果内容没有延伸到查看区域之外,则将其保留在窗口底部;如果内容比查看区域长,则将其保留在内容的末尾。谢谢你的回答