我正在使用Bootstrap构建一个网站。我还是Boostrap的新手,现在仍然在响应式网格设计方面苦苦挣扎。
所以我的问题是,如果我想在屏幕很大时有4列的行,但是当屏幕处于中等状态时,我希望它只变成3列,其中一列要堆叠到另一列(即第3列堆叠在第4列的顶部。)
要说清楚,我将说明我的设计:
当屏幕很大时:
当屏幕为中等时,变为:
列(填充到聊天栏列的顶部):
上面的图片只是我用html表创建的虚拟
如何实现这一目标?这是否可以使用纯bootstrap css?
答案 0 :(得分:1)
您可以使用这样的嵌套列...
<div class="container-fluid">
<div class="row">
<div class="col-md-2 col-sm-2">
sidebar
</div>
<div class="col-md-5 col-sm-6">
newsfeed
</div>
<div class="col-md-5 col-sm-2">
<div class="row">
<div class="col-md-6 col-sm-12">
stuff
</div>
<div class="col-md-6 col-sm-12">
chatbar
</div>
</div>
</div>
</div>
</div>
此外,您没有指定sm / xs屏幕,因此此布局将在xs屏幕上垂直堆叠。您可以通过将-sm-
更改为-xs-
答案 1 :(得分:0)
试试这个标记 -
调整浏览器宽度以查看效果。
修改强>
我认为这就是你所需要的。查看更新代码段。根据您的意愿调整列的高度。
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
</head>
<body>
<div class="row">
<div class="col-lg-2 col-md-2" style="background-color: red;">
sidebar
</div>
<div class=" col-lg-5 col-md-6 " style="background-color: black;">
newsfeed
</div>
<div class="col-md-4 col-lg-5">
<div class="row">
<div class="col-md-12 col-lg-4 " style="background-color: blue;">
stuffs
</div>
<div class="col-md-12 col-lg-8 " style="background-color: green;">
chatbar
</div>
</div>
</div>
</div>
</body>
</html>