【问题标题】:How can I have a scrollable body with fixed header and footer inside a container div?如何在容器 div 中有一个带有固定页眉和页脚的可滚动正文?
【发布时间】:2020-02-07 03:44:08
【问题描述】:

我有一个容器<div>,里面有两个孩子<div> 元素。我想将一个孩子<div> 放在顶部,另一个孩子<div> 放在容器<div> 的底部。中间部分(内容)应该在顶部和底部子 <div> 元素之间滚动。

我希望容器 <div> 内的两个子元素 <div> 具有固定位置,并且内容应该滚动而不滚动顶部和底部 div。

我想要一个使用 CSS 或 jQuery 的解决方案,拜托。有关 JSFiddle 示例,请参阅下面的评论。

【问题讨论】:

标签: jquery html css


【解决方案1】:

这应该相当简单。 JSFiddle Example

首先,我将松散的 div 文本放在 <p> 元素中,并删除了该 <p> 元素的默认边距。然后,我将 overflow: scroll; 更改为 overflow-y: scroll; 并将其移至新的 <p> 元素。最后,我给<p>元素显式地赋予了height: 300px;,即父元素的高度减去页眉和页脚的高度。

HTML:

<div class="outside">
    <div class="inside">inside1 Top should not scroll</div>
    <p>Your Text Here</p>
    <div class="inside2">inside 2 Bottom should not scroll</div>
</div>

CSS:

.outside {
    width: 400px;
    height: 400px;
    background-color: #EEE;
    border: 1px solid black;
}
.outside p {
    overflow-y: scroll;
    margin: 0;
    height: 300px;
}
.inside {
    border: 1px solid #000;
    background-color: #000;
    color: #FFF;
    height: 50px;
}
.inside2 {
    bottom: 2px;
    border: 1px solid #000;
    background-color: #000;
    color: #FFF;
    height: 50px;
}

【讨论】:

  • 好吧,这很好理解。但是你能在不使用

    元素的情况下做同样的事情吗?意味着使用我使用的 'outside'、'inside' 和 'inside2' 元素。

  • 提前谢谢先生。你可以使用 jQuery。
  • @user2668276 我认为您需要为此使用某种 JavaScript。如果此答案对您有所帮助,请不要忘记投票和/或单击该复选标记,让其他人知道它有帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-19
  • 1970-01-01
相关资源
最近更新 更多