html - Bootstrap 3 响应式菜单 - 导航栏间距问题

标签 html css twitter-bootstrap-3

我遇到了以下问题:

根据文档,Bootstrap 3 导航栏具有三个不同的分隔线,定义如下:http://getbootstrap.com/components/#navbar-default

  • nav navbar-nav
  • navbar-form navbar-left
  • nav navbar-nav navbar-right

但是,我没有任何导航链接可以输入品牌旁边的 nav navbar-nav 部分;我只使用 navbar-form navbar-leftnav navbar-nav navbar-right 所以我决定完全删除 nav navbar-nav .

给我的问题是,当菜单折叠时,navbarform 之间有一个奇怪的间距。实现我正在尝试做的事情和/或避免这个问题的正确方法是什么?

更新 如果我放下 nav navbar-nav navbar-right 我会遇到相同的间距问题,除了折叠菜单底部的底部。 Bootstrap 似乎希望有东西;有办法解决这个问题吗?

Update2 默认 Bootstrap 3 导航栏 http://jsfiddle.net/wmkp595e/

最佳答案

如果您在媒体查询之前查看导航栏的 Bootstrap 3 css ( https://raw.githubusercontent.com/twbs/bootstrap/master/dist/css/bootstrap.css ) -- 这是小视口(viewport)菜单使用的那个,您会发现无论您放在哪里,边框都在那里你的表单,所以如果它就在 .navbar-header 之后,你将有双重规则和顶部的填充,你可能想删除也可能不想删除。

.navbar-form {
  padding: 10px 15px;
  margin-top: 8px;
  margin-right: -15px;
  margin-bottom: 8px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
          box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
}

如果你把你的表单放在它后面,写一些 css 来解决这个问题,因为你的 css 将在 Bootstrap CSS 之后,你将需要一个最大宽度,否则你的会搞砸填充:

@media (max-width:767px) {
   .navbar-form {
      border-top:0px;
      padding-top:0;
   }
}

演示:http://jsfiddle.net/wmkp595e/3

关于html - Bootstrap 3 响应式菜单 - 导航栏间距问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26288104/

相关文章:

html - 在悬停时在 Bootstrap 行的右侧显示删除按钮

javascript - 将输入文本拆分为单独的字段

javascript - 无法将 HTML 数据属性值解析为 Javascript 对象

css - 我不明白这些 LESS 函数代码(如果, bool 值)

CSS:无法使高度过渡工作

html - 将图像填充到表格单元格中,而不调整大小和溢出

php - 提交操作后自动向下滚动

html - 带有普通 HTML 的表单中单选输入中的多个值

javascript - 鼠标悬停时如何在侧边栏上显示子菜单栏?

css - 移动时的悬停情况(在视频中)