jquery - 如何更改下拉菜单响应式 Bootstrap 的宽度

标签 jquery css twitter-bootstrap

我使用来自 bootstrap 的响应式导航栏。我想更改更改为下拉菜单的宽度,此宽度的默认值为 768px 但我想根据我的宽度更改它。我应该怎么做我认为我应该使用 jquery 使用 $(windows).resize() 事件来做到这一点。 这是 Bootstrap 导航栏的示例:

<nav class="navbar navbar-default" role="navigation">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Brand</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Link</a></li>
        <li><a href="#">Link</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
            <li class="divider"></li>
            <li><a href="#">One more separated link</a></li>
          </ul>
        </li>
      </ul>
      <form class="navbar-form navbar-left" role="search">
        <div class="form-group">
          <input type="text" class="form-control" placeholder="Search">
        </div>
        <button type="submit" class="btn btn-default">Submit</button>
      </form>
      <ul class="nav navbar-nav navbar-right">
        <li><a href="#">Link</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li class="divider"></li>
            <li><a href="#">Separated link</a></li>
          </ul>
        </li>
      </ul>
    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>

最佳答案

我认为使用定制有两种方法可以做到这一点。也许定制 bootstrap.css 文件的最快方法是使用位于 http://getbootstrap.com/customize/ 的定制器。 . 在那里您可以更改 @grid-float-breakpoint 的值。我用值 480px 进行了测试(原始值为 @screen-sm,与 768px 相同),然后单击“定制程序”页面末尾的“编译和下载”按钮。这将在导航栏折叠时更改断点。例如,在 bootstrap.css 文件中,以下值从

更改为
@media (min-width: 768px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }

到下面这个。之前的 @media 设置来自默认的 bootstrap.css 下载,没有自定义。

@media (min-width: 480px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }

更改这些设置的第二种方法是使用 LESS 并从源代码编译相同的值。如果你决定自己编译,你可以在 variables.less 文件中发现变量 @grid-float-breakpoint/variables.less)。更多信息,请访问 Compiling CSS and JavaScriptBootstrap 3 Less Workflow Tutorial

关于jquery - 如何更改下拉菜单响应式 Bootstrap 的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24969756/

相关文章:

javascript - 在 Chrome 扩展中执行 jQuery.ajax 请求时更改 cookie

javascript - 带有 cookie 的 CSS 主体类 jquery 切换器

javascript - 站点在加载期间崩溃 2 秒

javascript - 通过jquery更改html视频播放器的css

javascript - 在 Bootstrap 中放大图像 :- changes all images to enlarged image

html - 在 Twitter bootstrap 中,当我减小浏览器的大小时,如何阻止 div 垂直排列?

twitter-bootstrap - 使用媒体查询在移动设备上隐藏 Bootstrap 工具提示

jquery - Bootstrap Navbar 折叠按钮在点击时不起作用

javascript - 确保在动态更改 jquery 时加载图像

css为一个类分配多个样式 block