Css。如果 div 覆盖页脚,如何将固定位置向上移动
Css. How to move div with fixed position up if it overlays footer
我有菜单、内容和页脚。菜单有固定的位置。如果我将它向下滚动到页面末尾,它就会覆盖页脚。如果菜单开始覆盖页脚,我如何强制菜单向上移动?
编辑:
我使用 bootstrap 类。
我的 Html
<div class="container">
<div class="row">
<div class="col-sm-3" id="myScrollspy">
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#section1">Section 1</a></li>
<li><a href="#section2">Section 2</a></li>
<li><a href="#section3">Section 3</a></li>
...
</ul>
</div>
<div class="col-sm-9">
<div id="section1">
<h1>Section 1</h1>
<p>Try to scroll this section and look at the navigation list while scrolling!</p>
</div>
<div id="section2">
<h1>Section 2</h1>
<p>Try to scroll this section and look at the navigation list while scrolling!</p>
</div>
...
</div>
</div>
Css:
ul.nav-pills {
position:fixed;
}
更改菜单、内容和页脚以阻止。
添加 css :
.clearfix::before, .clearfix::after {
content: "";
display: table;
}
.clearfix::after {
clear: both;
}
并将 class clearfix
添加到您的页脚(最高层次)和 class container
.
您应该使用 bootstrap“affix”插件。
http://getbootstrap.com/javascript/#affix
您可以在此处查看它如何与 scrollspy 结合使用的示例。
http://codepen.io/SitePoint/full/GgOzwX/(不是我的代码)
本质上,您所做的就是告诉它何时开始和停止成为 'fixed' 元素。
$('#nav').affix({
offset: {
top: $('#nav').offset().top,
bottom: ($('footer').outerHeight(true) + $('.application').outerHeight(true)) + 40
}
});
我有菜单、内容和页脚。菜单有固定的位置。如果我将它向下滚动到页面末尾,它就会覆盖页脚。如果菜单开始覆盖页脚,我如何强制菜单向上移动?
编辑: 我使用 bootstrap 类。 我的 Html
<div class="container">
<div class="row">
<div class="col-sm-3" id="myScrollspy">
<ul class="nav nav-pills nav-stacked">
<li class="active"><a href="#section1">Section 1</a></li>
<li><a href="#section2">Section 2</a></li>
<li><a href="#section3">Section 3</a></li>
...
</ul>
</div>
<div class="col-sm-9">
<div id="section1">
<h1>Section 1</h1>
<p>Try to scroll this section and look at the navigation list while scrolling!</p>
</div>
<div id="section2">
<h1>Section 2</h1>
<p>Try to scroll this section and look at the navigation list while scrolling!</p>
</div>
...
</div>
</div>
Css:
ul.nav-pills {
position:fixed;
}
更改菜单、内容和页脚以阻止。
添加 css :
.clearfix::before, .clearfix::after {
content: "";
display: table;
}
.clearfix::after {
clear: both;
}
并将 class clearfix
添加到您的页脚(最高层次)和 class container
.
您应该使用 bootstrap“affix”插件。
http://getbootstrap.com/javascript/#affix
您可以在此处查看它如何与 scrollspy 结合使用的示例。 http://codepen.io/SitePoint/full/GgOzwX/(不是我的代码)
本质上,您所做的就是告诉它何时开始和停止成为 'fixed' 元素。
$('#nav').affix({
offset: {
top: $('#nav').offset().top,
bottom: ($('footer').outerHeight(true) + $('.application').outerHeight(true)) + 40
}
});