为什么我的粘性菜单在更改为 position:fixed 时会向左跳转
Why does my sticky menu jump left when changing to position:fixed
我在尝试创建粘性菜单时在我的网站上遇到了一个奇怪的行为。好吧,粘性菜单还可以,但是当它粘住时(向下滚动页面后)它突然向左移动。
我认为这与将样式更改为 position:fixed 有某种关系。
我怎样才能使菜单保持相同的大小,居中,就像它在未粘贴时的样子?
您可以查看现场演示 here。谢谢。
简单,给它一套width
.isStuck { width:100%; }
宽度 100% 无效,因为您的布局有侧边栏,所以您需要减去侧边栏和内边距宽度
.isStuck {
z-index: 1000;
width: calc(100% - 480px);
}
为@media 查询下的 id #menu 添加特定样式
@media only screen and (min-width: 769px)
.isStuck #menu {
width: calc(100% - 480px);
}
@media only screen and (max-width: 768px)
.isStuck {
z-index: 1000;
width: calc( 100% - 8%);
}
好的,伙计们,我使用您的技术和一些@media 查询使它工作并完全响应。你们很棒,谢谢你们的帮助。最终代码:
@media only screen and (min-width: 769px) {
.isStuck #menu { width: calc(100% - 480px); }
}
@media (max-width: 991px) {
.isStuck #menu { width: calc(100% - 100px); }
}
@media (min-width: 481px) and (max-width: 767px){
.isStuck { width: calc(100% - 40px); }
}
@media (max-width: 480px){
.isStuck { width: calc(100% - 50px); }
}
我在尝试创建粘性菜单时在我的网站上遇到了一个奇怪的行为。好吧,粘性菜单还可以,但是当它粘住时(向下滚动页面后)它突然向左移动。
我认为这与将样式更改为 position:fixed 有某种关系。 我怎样才能使菜单保持相同的大小,居中,就像它在未粘贴时的样子?
您可以查看现场演示 here。谢谢。
简单,给它一套width
.isStuck { width:100%; }
宽度 100% 无效,因为您的布局有侧边栏,所以您需要减去侧边栏和内边距宽度
.isStuck {
z-index: 1000;
width: calc(100% - 480px);
}
为@media 查询下的 id #menu 添加特定样式
@media only screen and (min-width: 769px)
.isStuck #menu {
width: calc(100% - 480px);
}
@media only screen and (max-width: 768px)
.isStuck {
z-index: 1000;
width: calc( 100% - 8%);
}
好的,伙计们,我使用您的技术和一些@media 查询使它工作并完全响应。你们很棒,谢谢你们的帮助。最终代码:
@media only screen and (min-width: 769px) {
.isStuck #menu { width: calc(100% - 480px); }
}
@media (max-width: 991px) {
.isStuck #menu { width: calc(100% - 100px); }
}
@media (min-width: 481px) and (max-width: 767px){
.isStuck { width: calc(100% - 40px); }
}
@media (max-width: 480px){
.isStuck { width: calc(100% - 50px); }
}