【发布时间】:2017-08-09 15:42:48
【问题描述】:
正如您在下面的代码笔中看到的,我有一个小布局,包括一个固定的标题和一个固定的侧边栏。在侧边栏内,我在底部固定了另一个 div,所以我想滚动侧边栏菜单,但侧边栏页脚固定在底部(所以我将属性 overflow: auto; 添加到侧边栏。
问题是当你把屏幕变小时,你可以在侧边栏上滚动,并且页脚是固定的,但是一些内容仍然保留在固定的 div 下(滚动条也是如此)。
为什么会发生这种情况,我该如何解决?谢谢。
【问题讨论】:
正如您在下面的代码笔中看到的,我有一个小布局,包括一个固定的标题和一个固定的侧边栏。在侧边栏内,我在底部固定了另一个 div,所以我想滚动侧边栏菜单,但侧边栏页脚固定在底部(所以我将属性 overflow: auto; 添加到侧边栏。
问题是当你把屏幕变小时,你可以在侧边栏上滚动,并且页脚是固定的,但是一些内容仍然保留在固定的 div 下(滚动条也是如此)。
为什么会发生这种情况,我该如何解决?谢谢。
【问题讨论】:
需要进行一些更正。
首先,您应该为 .sidebar-body 而不是 .sidebar-container 设置溢出。因为您的固定页脚位于 .sidebar-container 内部,并且是 .sidebar-body 的兄弟。
并且您应该计算.sidebar-body 的高度,因为您必须为其设置溢出。
并且替换下面的 CSS 会有所帮助,
.sidebar-container 中移除溢出
.sidebar-footer{height:35px;}
.sidebar-body{height: calc(100% - 35px);overflow: auto;}
【讨论】:
为侧边栏容器添加填充(固定页脚高度)
padding-bottom: 37px;
【讨论】: