好吧所以我把ul高度100%和li一块到了阻挡等级但由于某种原因我不能让我的垂直导航达到全高。好吧,我真的想让它停在页脚的右边。所以这里是代码:我在ul上添加了背景色,但由于某种原因它没有出现在底部
html {
height: 100%;
}
body{
height: 100%;
margin: 0;
font-family: courier;
font-size: 19px;
}
* {
margin: 0;
}
#pagewrap {
min-height: 100%;
margin-bottom: -174px;
}
#pagewrap:after {
content: "";
display: block;
}
#footer, #pagewrap:after {
height: 174px;
}
.sub:last-child {
border: 0px;
}
#footer {
background-color: #00e600;
}
.wrap {
margin: 0 auto;
width: 100%;
display: flex;
align-items: center;
}
.sub {
padding: 12px;
width: 32%;
height: 150px;
background: #00e600;
color: white;
border-right: solid white 1px;
}
.sub:last-child {
border: 0px;
}
#nav {
list-style: none;
font-weight: bold;
margin-bottom: 10px;
width: 10%;
text-align: center;
background-color: brown;
padding-right: 20px;
}
#nav ul {
list-style-type: none;
height: 100%;
margin: 0px;
padding: 0;
overflow: auto;
background-color: brown;
}
#nav li {
margin: 0px;
}
#nav li a {
padding: 10px;
display: block;
text-decoration: none;
font-weight: bold;
color: pink;
background-color: brown;
}
#nav li a:hover {
color: white;
text-shadow: 2px 2px 4px white;
}
<body>
<div id="pagewrap">
<div id="nav">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Works</a></li>
<li><a href="#">About</a></li>
</ul>
</div>
</div>
<!--
<footer id="footer">
</footer>
-->
<div id="footer">
<div class="wrap">
<div class="sub">Lorem Ipsum</div>
<div class="sub">Lorem Ipsum </div>
<div class="sub">Lorem Ipsum </div>
</div>
</div>
</body>
是否有人能够发现问题?
答案 0 :(得分:2)
要完全满足您的要求(在页脚之前停止垂直导航,您需要组合几种不同的样式。您的原始问题很可能是{{1}之间存在父元素需要增加100%的高度。幸运的是,现在有一种更有效的方法。将以下内容添加到html, body
样式中:
#nav
这将使#nav {
height: 100vh;
}
视口高度达到100%。要容纳页脚,请更新以下代码:
nav
这会计算整个屏幕高度与页脚高度之间的差异,目前为174px。这是一个更新的小提琴:https://jsfiddle.net/44655gw4/1/