javascript - 如何修复浏览器调整大小时 Bootstrap 导航栏固定顶部填充

标签 javascript jquery html css twitter-bootstrap

我有一个 .navbar.navbar-inverse.navbar-fixed-top 导航栏,它始终位于页面顶部。我给 body 填充了 70 px,效果很好。

问题是,如果我调整浏览器的大小,那么导航栏就不再美观整洁且高度固定。相反,它包裹了其中的所有元素,导航栏的高度变得超过 70 px,并覆盖了页面的部分内容。

为了解决这个问题,我尝试使用 JQuery 检查导航栏的高度并为正文提供更多填充,我将其放入 document.ready()

if ($(".navbar.navbar-inverse.navbar-fixed-top").height() > 100) {
    $("html, body").css("padding-top", "150px");
}

但是,此解决方案不起作用,因为当浏览器大小缩小时不会重新加载,因此此检查不会动态发生。那么我该如何解决这个问题呢?

最佳答案

您可以在此处使用窗口调整大小事件监听器。像这样的事情:

$( window ).resize(function() {
  if ($(".navbar.navbar-inverse.navbar-fixed-top").height() > 100) {
    $("html, body").css("padding-top", "150px");
  }
});

此外,您还可以采用 Bootstrap 方式,根据屏幕分辨率将导航栏折叠或展开为按钮。在我看来,上述方法稍微不太理想

关于javascript - 如何修复浏览器调整大小时 Bootstrap 导航栏固定顶部填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39456341/

相关文章:

javascript/json 存储严格索引的数组

Javascript If/Else 语句检查内容 :url

到处都使用相同的类进行 Javascript 验证

java - 删除 Freemarker 模板中的 HTML 标签

html - 在具有绝对定位的 FF 上打印问题

html - 如何调用团队名称/文本并以 html 显示。 the/is messing it up 搞砸了

javascript - 如何在包含多个 Canvas 的部分之后添加一个部分?

Javascript - 我从字符串创建了一个 blob,如何取回该字符串?

php - Woocommerce 日期选择器始终开启

带有设置参数的 jQuery 外部宽度?