【发布时间】:2016-10-01 07:23:34
【问题描述】:
我正在为我的网站设计广告管理面板,首先我在 Wrapper 中有一个顶部导航栏,之后我还有 2 个 div。
1.侧边导航菜单(左侧)
2.页面其余内容(右)
我希望我的侧边导航菜单覆盖整个屏幕高度。但不知何故我没有做到这一点,我尝试了以下尝试。
第一次尝试(html 代码)
.mainSideNavBar {
width: 20%;
z-index: 0;
position: fixed;
left: 0;
top: 63px;
height: 100%;
}
.sideNavBar {
width: 100%;
background-color: #303641;
transition: width 0.5s ease;
overflow-x: hidden;
border: 1px solid #454a54;
height: 100%;
}
.mainPageContent {
width: 100%;
height: 100%;
}
.pageContent {
width: 100%;
background-color: #fff;
padding-left: 20%;
transition: width 0.5s ease, padding-left 0.5s ease;
border: 1px solid black;
height: 100%;
}
<div class="wrapper">
<div class="mainSideNavBar">
<div class="sideNavBar" id="sideNavBar">
<ul>
<li><a href="#"><i class="fa fa-television"></i><span class="" id="textHideD">Dashboard</span></a>
</li>
<li><a href="#"><i class="fa fa-envelope-o"></i><span class="" id="textHideN">Notifications</span></a>
</li>
<li><a href="#"><i class="fa fa-users"></i><span class="" id="textHideM">Manages Users</span></a>
</li>
<li><a href="#"><i class="fa fa-exchange"></i><span class="" id="textHideB">Bet Management</span></a>
</li>
<li><a href="#"><i class="fa fa-pencil-square-o"></i><span class="" id="textHideR">Modify Rules</span></a>
</li>
<li><a href="#"><i class="fa fa-credit-card"></i><span class="" id="textHideP">Payment</span></a>
</li>
</ul>
</div>
<!--End sideNavBar-->
</div>
<!--End mainSideNavBar-->
<div class="mainPageContent">
<div class="pageContent" id="pageContent">
<h1>My Content</h1>
</div>
</div>
这段代码的问题是,如果 .PageContent 类中的内容小于屏幕高度(不显示滚动条),但当 .PageContent 类中的内容大于当前屏幕高度时(滚动条显示)然后我的左侧导航显示顶部导航和它自身之间的小差距,因为(位置:固定)。
截图如下:
在我的第二次尝试中,我将 position:fixed 更改为 position:absolute,然后出现了一个新问题, 侧边栏导航折叠一半的高度带有滚动条的当前屏幕高度
html 和 body 的 Css 代码
html , body{height:100%;}
我被卡住了,建议我一些好的(正确的)方法来做。
【问题讨论】: