尝试将导航设置固定在屏幕顶部,但仅限于屏幕widths > 782px
到目前为止,我已经将一半的脚本运行正常:https://jsfiddle.net/ah4ta7xc/1/
但是,当应用类sticky-menu
时,我的方法会在顶部留下不必要的间隙。
HTML:
<div id="foo">Logo and stuff</div>
<div id="main-menu">Site menu</div>
CSS:
body {
height: 3000px;
}
#foo {
height: 50px;
background-color: #ccc;
}
#main-menu {
width: 100%;
height: 30;
background-color: black;
color: white;
text-align: center;
padding: 10px;
}
.sticky-menu {
z-index: 10;
width: 100%;
position: fixed;
}
jQuery的:
$(function(){
if ($(window).width() > 782) {
$('#main-menu').addClass('sticky-menu');
}
$(window).resize(function () {
if ($(window).width() > 782) {
$('#main-menu').addClass('sticky-menu');
}
else {
$('#main-menu').removeClass('sticky-menu');
}
});
});
答案 0 :(得分:0)
您可以将这些行添加到正文的CSS中:
margin: 0;
padding: 0;
答案 1 :(得分:0)
当滚动到达该点时,您只需应用粘性导航,例如:
$(window).scroll(function () {
var scroll = $(this).scrollTop();
var topDist = $('#main-menu').offset().top;
if (scroll > topDist) {
$('#main-menu').addClass('sticky-menu');
} else {
$('#main-menu').removeClass('sticky-menu');
}
});