所以我试图用Bootstrap创建一个很酷的投资组合登陆页面。
该模板包含固定的导航栏和粘性页脚。页面的其余部分是空格,我想填充基本上是一个巨大的背景,所以我把一个测试段落元素试着看看如何调整大小。我想我可以添加使得身体高度达到100%的CSS规则,但是当我这样做时,我得到一个溢出而我的页脚不再位于页面的底部。相反,我在底部有一小部分背景溢出。
我该如何解决这个问题?我把背景颜色变成了亮黄色试图表明我的意思。任何帮助表示赞赏!
这是HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>Work in Progress</title>
</head>
<body>
<!--navbar-->
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"
data-toggle="collapse" data-target="#navbar"
aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Portfolio</a>
</div>
<div id="navbar" class="navbar-collapse collapse"
aria-expanded="false" style="height: 1px;">
<ul class="nav navbar-nav">
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"
role="button" aria-haspopup="true"
aria-expanded="false">Projects
<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Rails Projects</a></li>
<li><a href="#">LAMP Projects</a></li>
</ul>
</ul>
</div>
</div>
</nav>
<div class="main">
<div class="container">
<p>Test text</p>
</div>
</div>
<!--footer-->
<footer class="footer">
<div class="container">
<div class="row">
<div class="col-md-4">
<p>Contact info or whatever goes here.</p>
</div>
<div class="col-md-4 col-md-offset-4">
<p>More info or whatever goes here.</p>
</div>
</div>
</div>
</footer>
</body>
</html>
这是CSS
html, body{
height: 100%
}
.main{
height: 100%;
background-color: #FFFF00;
margin-top: 50px;
}
.footer{
position: absolute;
bottom: 0;
width: 100%;
height: 60px;
background-color: #000;
color: #9d9d9d;
}
答案 0 :(得分:1)
你可以使用这个CSS(身体position: relative
和.main
身高作为计算功能(100%减去页脚高度):
html,
body {
height: 100%;
position: relative;
}
.main {
height: calc(100% - 60px);
background-color: #FFFF00;
padding-top: 50px;
}
.footer {
position: absolute;
bottom: 0;
width: 100%;
height: 60px;
background-color: #000;
color: #9d9d9d;
}
答案 1 :(得分:0)
演示:https://fiddle.jshell.net/uvaef49h/1/
您想使用以下CSS:
html, body{
height: 100%;
padding: 0;
margin: 0;
}
.main{
height: calc(100% - 110px);
background-color: #FFFF00;
margin-top: 50px;
}
.footer{
position: absolute;
bottom: 0;
width: 100%;
height: 60px;
background-color: #000;
color: #9d9d9d;
overflow: hidden;
}
为什么它以前不起作用?
身体的高度为X,主要占据了100%。然而,主要被50px
边缘推低了。在.main
部分之后,您的页脚已完全从视口移出,因此我必须从60px
的高度移除另一个.main
。页脚仍有溢出问题所以我隐藏了。
最后,浏览器想要添加一些随机边距/填充,所以我也删除了它。