我正在制作带有顶部固定导航栏的响应式布局。下面我有两列,一列用于侧边栏 (3),一列用于内容 (9)。在桌面上看起来像这样
导航栏 [3][9]
当我resize移动时,它navbar被压缩和隐藏,然后侧边栏堆叠在内容的顶部,如下所示:
resize
navbar
导航栏 [3] [9]
我想要顶部的主要内容,所以我需要将移动设备上的顺序更改为:
导航栏 [9] [3]
我发现这篇文章涵盖了相同的观点,但已接受的答案已被编辑为说解决方案不适用于当前版本的 Bootstrap。
如何在移动设备上重新排序这些列?或者,我怎样才能让 sidbar 列表组进入我的扩展导航栏?
这是我的代码:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <!-- Optional theme --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous"> <!-- Latest compiled and minified JavaScript --> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <div class="navbar navbar-inverse navbar-static-top"> <div class="container"> <a href="#" class="navbar-brand">Brand Title</a> <button class="navbar-toggle" data-toggle="collapse" data-target=".navHeaderCollapse"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <div class="collapse navbar-collapse navHeaderCollapse"> <ul class="nav navbar-nav navbar-right"><!--original navbar--> <li class="active"><a href="#">Home</a></li> <li><a href="#">FAQ</a></li> </ul> </div> </div> </div><!--End Navbar Div--> <div class="container"> <div class="row"> <div class="col-lg-3"> <div class="list-group"> <a href="#" class="list-group-item"> <h4 class="list-group-item-heading">Lorem ipsum</h4> <p class="list-group-item-text">Lorem Ipsum is simply dummy text.</p></a> </div> </div><!--end sidebar--> <div class="col-lg-9"> <div class="panel panel-default"> <div class="panel-body"> <div class="page-header"> Main Content </div> </div> </div><!--end main content area-->
您无法在小屏幕中更改列的顺序,但您可以在大屏幕中更改。
所以改变你的列的顺序。
<!--Main Content--> <div class="col-lg-9 col-lg-push-3"> </div> <!--Sidebar--> <div class="col-lg-3 col-lg-pull-9"> </div>
默认情况下,这首先显示主要内容。
所以在移动主要内容首先显示。
通过使用col-lg-push,col-lg-pull我们可以在大屏幕中重新排序列,并在左侧显示侧边栏,在右侧显示主要内容。
col-lg-push
col-lg-pull
在这里工作jsfiddle。