javascript - 无论内容如何,​​具有 100% 窗口高度的移动导航栏

标签 javascript css mobile navigationbar

我有一个页面的移动版本。内容足够用户必须在他的移动设备上滚动。单击图标时,移动导航栏从左侧滑入,body 得到 overflow: hidden; 因此内容不再滚动。有没有办法让导航栏的高度达到窗口的 100%(而不是文档的高度),以便用户可以进一步在导航栏内滚动? 目前滑入和导航高度由 Javascript 控制,但我正在寻找 CSS 解决方案。谁能帮忙?

// CSS
#mobile_nav {
    width: 300px;
    position: fixed;
    top: 0;
    left: -300px;
    z-index: 10000;
    overflow: auto;
}

// JS
jQuery("#mobile_button").on("click", function() {
    jQuery("#mobile_nav")
        .css({ height: jQuery(window).height() });
        .stop(true)
        .animate({ left: 0 })
    ;
    jQuery("body").css({ overflow: "hidden" });
});

最佳答案

您可以像这样使用视口(viewport)单位:

    height: 100vh;

您可以检查浏览器对此 css 属性的支持 here .

关于javascript - 无论内容如何,​​具有 100% 窗口高度的移动导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36081514/

相关文章:

javascript - 克隆节点真正只有一级

javascript - 比较性能 MathJax vs MathQuill vs Katex

javascript - 为什么我的 drawImage 不接受 '0+constant' 的高度参数?

iphone - 可以使用Watir在移动设备上自动化移动站点测试吗?

javascript - ASP.NET MVC 将部分 View 呈现为字符串以使用 JSON 返回

css - 为什么滚动时我的背景会移动?

javascript - 查看此网络优化报告 - 我该如何解决?

javascript - Material-ui主题父组件但不是同类型的子组件

ios - 将文件添加到已打包的 .ipa 中

css - 如何使选择加入响应以便它在较小的屏幕上保持在正确的位置