1

我正致力于使用Twitter Bootstrap更新我的网站以进行响应。我现在的网站可以查看@http://www.JoshuaBock.comTwitter Bootstrap - Nav collapse

我在尝试自定义导航栏折叠功能时遇到问题。目前我的显示正确,但不能在981像素和1126像素之间运行。我正在避免修改Bootstrap基本代码,以便我可以轻松升级到更新版本的Bootstrap。这个问题是由我的自定义媒体查询造成的:

媒体查询

<pre><code> 
@media (min-width: 980px) and (max-width: 1126px) { 
     .navbar{ 
     width: 85%; 
     } 
     .navbar-fixed-top, 
     .navbar-fixed-bottom { 
     position: static; 
     } 
     .navbar-fixed-top { 
     margin-bottom: 20px; 
     } 
     .navbar-fixed-bottom { 
     margin-top: 20px; 
     } 
     .navbar-fixed-top .navbar-inner, 
     .navbar-fixed-bottom .navbar-inner { 
     padding: 5px; 
     } 
     .navbar .container { 
     width: auto; 
     padding: 0; 
     } 
     .navbar .brand { 
     padding-right: 10px; 
     padding-left: 10px; 
     margin: 0 0 0 -5px; 
     } 
     .nav-collapse { 
     clear: both; 
     } 
     .nav-collapse .nav { 
     float: none; 
     margin: 0 0 10px; 
     } 
     .nav-collapse .nav > li { 
     float: none; 
     } 
     .nav-collapse .nav > li > a { 
     margin-bottom: 2px; 
     } 
     .nav-collapse .nav > .divider-vertical { 
     display: none; 
     } 
     .nav-collapse .nav .nav-header { 
     color: #777777; 
     text-shadow: none; 
     } 
     .nav-collapse .nav > li > a, 
     .nav-collapse .dropdown-menu a { 
     padding: 9px 15px; 
     font-weight: bold; 
     color: #777777; 
     -webkit-border-radius: 3px; 
      -moz-border-radius: 3px; 
       border-radius: 3px; 
     } 
     .nav-collapse .btn { 
     padding: 4px 10px 4px; 
     font-weight: normal; 
     -webkit-border-radius: 4px; 
      -moz-border-radius: 4px; 
       border-radius: 4px; 
     } 
     .nav-collapse .dropdown-menu li + li a { 
     margin-bottom: 2px; 
     } 
     .nav-collapse .nav > li > a:hover, 
     .nav-collapse .dropdown-menu a:hover { 
     background-color: #f2f2f2; 
     } 
     .navbar-inverse .nav-collapse .nav > li > a, 
     .navbar-inverse .nav-collapse .dropdown-menu a { 
     color: #999999; 
     } 
     .navbar-inverse .nav-collapse .nav > li > a:hover, 
     .navbar-inverse .nav-collapse .dropdown-menu a:hover { 
     background-color: #111111; 
     } 
     .nav-collapse.in .btn-group { 
     padding: 0; 
     margin-top: 5px; 
     } 
     .nav-collapse .dropdown-menu { 
     position: static; 
     top: auto; 
     left: auto; 
     display: none; 
     float: none; 
     max-width: none; 
     padding: 0; 
     margin: 0 15px; 
     background-color: transparent; 
     border: none; 
     -webkit-border-radius: 0; 
      -moz-border-radius: 0; 
       border-radius: 0; 
     -webkit-box-shadow: none; 
      -moz-box-shadow: none; 
       box-shadow: none; 
     } 
     .nav-collapse .open > .dropdown-menu { 
     display: block; 
     } 
     .nav-collapse .dropdown-menu:before, 
     .nav-collapse .dropdown-menu:after { 
     display: none; 
     } 
     .nav-collapse .dropdown-menu .divider { 
     display: none; 
     } 
     .nav-collapse .nav > li > .dropdown-menu:before, 
     .nav-collapse .nav > li > .dropdown-menu:after { 
     display: none; 
     } 
     .nav-collapse .navbar-form, 
     .nav-collapse .navbar-search { 
     float: none; 
     padding: 10px 15px; 
     margin: 10px 0; 
     border-top: 1px solid #f2f2f2; 
     border-bottom: 1px solid #f2f2f2; 
     -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); 
      -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); 
       box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); 
     } 
     .navbar-inverse .nav-collapse .navbar-form, 
     .navbar-inverse .nav-collapse .navbar-search { 
     border-top-color: #111111; 
     border-bottom-color: #111111; 
     } 
     .navbar .nav-collapse .nav.pull-right { 
     float: none; 
     margin-left: 0; 
     } 
     .nav-collapse, 
     .nav-collapse.collapse { 
     height: 0; 
     overflow: hidden; 
     } 
     .navbar .btn-navbar { 
     display: block; 
     } 
     .navbar-static .navbar-inner { 
     padding-right: 10px; 
     padding-left: 10px; 
     } 
    } 

    @media (min-width: 980px) and (max-width: 1126px) { 
     .nav-collapse.collapse{ 
      height:0 !important; 
      overflow:hidden !important; 
     } 
    } 

</pre></code> 

更多指定!important部分似乎是导致该问题。如果我删除!important,则导航不会折叠。

实际的代码可以查看我的测试网站@http://beta.joshuabock.com/index.html

我知道我是接近的解决方案,但可以使用一些帮助搞清楚了这一点。任何帮助将不胜感激。提前致谢。

+0

你能更清楚一点“不工作”吗?你是指菜单没有按照它应该做的方式崩溃,或者它是围绕着“Joshua Bock ... Web Designer ...”标题的事实? – justinavery

+0

我的确指的是不折叠的方式。一旦我找出崩溃问题,包装问题就会被修复,事实上它可能已经被修复了。 –

+0

现在看起来你已经解决了这个问题,通过测试版链接来判断。如果是这样,你可以添加你的解决方案并解决问题? – justinavery

回答

0

当我指定媒体查询我通常指定它们像这样

@media all and (min-width: 980px) and (max-width: 1126px) 

注意到你开始@media,所以不知道这造成任何问题

+0

这似乎并未导致问题。 –

+0

我找到了解决这个问题的办法。根据这个问题的评论:http://stackoverflow.com/questions/12486051/bootstrap-change-the-default-responsive-navbar-breakpoint –

0

这是我如何解决这个

@media (max-width: 1992px) { 
    .navbar-header { 
     float: none; 
    } 
    .navbar-left,.navbar-right { 
     float: none !important; 
    } 
    .navbar-toggle { 
     display: block; 
    } 
    .navbar-collapse { 
     border-top: 1px solid transparent; 
     box-shadow: inset 0 1px 0 rgba(255,255,255,0.1); 
    } 
    .navbar-fixed-top { 
     top: 0; 
     border-width: 0 0 1px; 
    } 
    .navbar-collapse.collapse { 
     display: none!important; 
    } 
    .navbar-nav { 
     float: none!important; 
     margin-top: 7.5px; 
    } 
    .navbar-nav>li { 
     float: none; 
    } 
    .navbar-nav>li>a { 
     padding-top: 10px; 
     padding-bottom: 10px; 
    } 
    .collapse.in{ 
     display:block !important; 
    } 
}