【发布时间】:2019-10-13 07:57:51
【问题描述】:
我的问题很复杂(至少很难解释)。
我有一个响应式导航栏,默认情况下不在页面顶部,但您必须向下滚动一点,导航栏才能到达浏览器窗口的顶部。
在桌面 (48em
在移动设备上,一旦滚动位置到达导航栏元素,导航栏就会变得粘滞。
我的问题在于移动视图。我必须添加一段 CSS 代码,以便向下滚动时页面内容不会闪烁(跳跃)。 (我只有在JS添加粘性类时才需要它。)
.sticky + .content {
padding-top: 58px;
}
当汉堡菜单关闭时效果很好。
当菜单打开时,导航栏的高度会发生变化,它需要在顶部增加更多的填充,以免页面内容跳转。请参阅下面的 gif。 ????
如果我将此填充更改为 248 像素,则在打开菜单时内容不会跳转,但在关闭时会跳转。 ????♂️
.sticky + .content {
padding-top: 248px;
}
我想我应该写一段 JS 代码来做到这一点:
如果选中导航复选框,则更改 .sticky + .content {padding-top: 248px;}
如果未选中,请将其改回 .sticky + .content {padding-top: 58px;}
所有这些都只在 48em 以下。在桌面上,填充应该是 0。
下面是代码: https://jsfiddle.net/zsoltszilvai/t0zLv7yn/48/
我对 JS 了解不多,因此不胜感激。
【问题讨论】:
标签: javascript jquery css