【7】了解Bootstrap栅格系统基础案例(2)

时间:2021-12-15 13:30:00

ps.这一次要说的是“Responsive column resets”,但是不知道为什么中文官网没有给出翻译,但是在看到案例的时候,感觉这就像一个bug,我自己姑且叫这个是一个高度bug吧,方便自己,要是大家有其他好的说法,请告诉我。

=================================================================================================

Responsive column resets就是在某些阈值时,某些列可能会出现比别的列高的情况。这个情况可能不是你所要的,建议使用.clearfix(清理浮动)和响应式工具classe的组合,

清理浮动就不说了,有一定基础的都应该清楚了,至于响应式工具classe以后会说到(可以去中文官网看看),这里就是让大家知道有这么一个高度bug的情况。

=================================================================================================

直接贴代码

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<!-- Bootstrap不支持IE的兼容模式,加入此标签以确保在每个被支持的IE浏览器中保持最好的页面展现效果 -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- 由于Bootstrap 3是移动设备优先,加入此标签是为了确保适当的绘制和触屏缩放 -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap-Template-04</title>
<!-- 最新 Bootstrap 核心 CSS 文件 -->
<link rel="stylesheet" href="http://cdn.bootcss.com/twitter-bootstrap/3.2.0/css/bootstrap.min.css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<style>
.show-grid { margin-top: 15px; }
.show-grid [class^="col-"] {
padding-top: 10px;
padding-bottom: 10px;
background-color: #eee;
border: 1px solid #ddd;
}
</style>
</head>
<body>
<div class="container"> <h1>Responsive column resets<small>我自己叫这个是高度bug</small></h1> <div class="row show-grid">
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3<br>内容要多多---内容要多多---内容要多多---内容要多多---内容要多多---内容要多多</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div> <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div> </div>
<!-- 所有 Bootstrap 插件都依赖 jQuery,因此jQuery必须在Bootstrap之前引入 -->
<script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"></script>
<!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
<script src="http://cdn.bootcss.com/twitter-bootstrap/3.2.0/js/bootstrap.min.js"></script>
</body>
</html>

首页我们先看看这个在大屏sm方案下的效果图(sm方案是3+3+3+3=12,正好一行)【7】了解Bootstrap栅格系统基础案例(2)

从这个图上我们一眼就看到最前面的内容太多,把高度撑起来了,那在xs方案下的效果怎么样(xs方案是6+6=12一行,一共有2行)

第一种效果:

【7】了解Bootstrap栅格系统基础案例(2)

第二种效果

【7】了解Bootstrap栅格系统基础案例(2)

通过拉缩浏览器,我们看到了2种效果,但是没有一种是我们所要的效果,这时候,你是不是感觉出bug了啊,我想也是,官网给出了一种解决方案(使用.clearfix(清理浮动)和响应式工具classe的组合)

下面我们就来看看修改后的代码(我只贴出主要是地方)

<div class="row show-grid">
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3<br>内容要多多---内容要多多---内容要多多---内容要多多---内容要多多---内容要多多</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div> <!-- 在某些阈值时,某些列可能会出现比别的列高的情况。这个情况可能不是你所要的,建议使用.clearfix(清理浮动)和响应式工具classe的组合 -->
<div class="clearfix visible-xs"></div> <div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
</div>

这时候我们来看看效果吧
【7】了解Bootstrap栅格系统基础案例(2)

这下正好是xs的方案的样子了,哈哈。

=================================================================================================

这里还有一个小知识点“如果在一个 .row 内包含的列(column)大于12个,包含多余列(column)的元素将作为一个整体单元被另起一行排列。”

<div class="row">
<div class="col-xs-9">.col-xs-9</div>
<div class="col-xs-4">.col-xs-4<br>9 + 4 = 13 &gt; 12, </div>
<div class="col-xs-6">.col-xs-6</div>
</div>

效果自己运行下就知道了,截图就不上传了