我正在尝试提供类似于toyota.com网站的移动体验。基本上,我希望菜单的DIV出现,并具有用于溢出的滚动条。我已经将HTML和body标签设置为100%...,但是我看到菜单没有到达底部。它没有完全到达底部,因为标头的高度。但是,我不知道该如何解决。我已经看过很多次了,但是情况似乎与我自己的情况不同。
如果可以的话,您可以看看我的JSFiddle吗?可以在以下位置找到它:https : //jsfiddle.net/x5cry4Lx/5/
我现有的CSS(作为参考)...:
html, body {
height: 100%;
}
body.mobile-nav-open {
overflow: hidden;
}
.starter-template {
text-align: center;
}
section#header {
height: auto;
padding: 15px;
border-bottom: 1px solid #000;
background: #fff;
height: 36px;
}
section#header a.openNav,
section#header a.closeNav {
font-size: 11px;
color: #000;
text-decoration: none;
text-transform: uppercase;
}
section#header a.openNav i,
section#header a.closeNav i {
display: block;
font-size: 20px;
text-align: center;
}
section#header a.closeNav {
display: none;
}
body.mobile-nav-open section#header a.openNav {
display: none;
}
body.mobile-nav-open section#header a.closeNav {
display: block;
}
section#mobile-menu {
width: 100%;
height: 100%;
background: #fff;
z-index: 999;
display: none;
overflow-y: scroll;
}
section#mobile-menu li {
list-style: none;
}
section#mobile-menu li a {
text-decoration: none;
}
Run Code Online (Sandbox Code Playgroud)
还有我的HTML(作为参考)...:
<section id="header">
<div class="pull-right">
<a href="#" class="openNav"><i class="fa fa-bars"></i>Menu</a>
<a href="#" class="closeNav"><i class="fa fa-close"></i>Close</a>
</div>
<div class="clearfix"></div>
</section>
<section id="mobile-menu">
<div class="container">
<div class="starter-template">
<ul class="list-unstyled">
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</div>
</div>
</section>
Run Code Online (Sandbox Code Playgroud)
非常感谢您的协助!
有多种方法可以实现此目的。
1.使用calc。67px标头的高度在哪里。
变化:
html,
body {
height: 100%;
margin: 0;
}
section#mobile-menu {
width: 100%;
height: calc(100% - 67px);
background: #fff;
z-index: 999;
display: none;
overflow-y: scroll;
}
Run Code Online (Sandbox Code Playgroud)
2.制作标头position:absolute;并放好身体padding-top:67px;。
变化:
* {
box-sizing:border-box;
}
body {
padding-top:67px;
margin:0;
}
section#header {
padding: 15px;
border-bottom: 1px solid #000;
background: #fff;
height: 67px;
position:absolute;
left:0;
top:0;
width:100%;
}
Run Code Online (Sandbox Code Playgroud)