仅适用于 Bootstrap 3。
忽略字母(xs、sm、md、lg)现在,我将从数字开始...
- 数字 (1-12) 代表任何 div 总宽度的一部分
- 所有 div 分为 12 列
- 所以,
col-*-6 跨越 12 列中的 6 列(宽度的一半),col-*-12 跨越 12 列中的 12 列(整个宽度),等等
所以,如果你想两个相等的列跨越一个 div,写
<div class="col-xs-6">Column 1</div>
<div class="col-xs-6">Column 2</div>
或者,如果您希望三个不相等的列跨越相同的宽度,您可以这样写:
<div class="col-xs-2">Column 1</div>
<div class="col-xs-6">Column 2</div>
<div class="col-xs-4">Column 3</div>
您会注意到列数加起来总是 12。它可能小于 12,但请注意如果超过 12,因为您的违规 div 会下降到下一行(不是.row,即完全是另一个故事)。
您还可以在列中嵌套列,(最好在它们周围加上.row 包装器),例如:
<div class="col-xs-6">
<div class="row">
<div class="col-xs-4">Column 1-a</div>
<div class="col-xs-8">Column 1-b</div>
</div>
</div>
<div class="col-xs-6">
<div class="row">
<div class="col-xs-2">Column 2-a</div>
<div class="col-xs-10">Column 2-b</div>
</div>
</div>
每组嵌套的 div 也最多跨越其父 div 的 12 列。 注意:由于每个.col 类的两边都有15px 的填充,您通常应该将嵌套列包装在具有-15px 边距的.row 中。这样可以避免重复填充并保持嵌套和非嵌套 col 类之间的内容对齐。
-- 你没有特别询问xs, sm, md, lg 的用法,但它们是相辅相成的,所以我忍不住要谈一谈……
简而言之,它们用于定义该类应适用的屏幕尺寸:
-
xs = 超小屏幕(手机)
-
sm = 小屏幕(平板电脑)
-
md = 中等屏幕(某些桌面)
-
lg = 大屏幕(剩余桌面)
阅读"Grid
Options"
更多详细信息,请参阅官方 Bootstrap 文档中的章节。
您应该通常使用多个列类对 div 进行分类,以便它的行为根据屏幕大小而有所不同(这是引导程序响应的核心)。例如:具有col-xs-6 和col-sm-4 类的div 将跨越手机屏幕的一半(xs)和平板电脑屏幕的1/3(sm)。
<div class="col-xs-6 col-sm-4">Column 1</div> <!-- 1/2 width on mobile, 1/3 screen on tablet) -->
<div class="col-xs-6 col-sm-8">Column 2</div> <!-- 1/2 width on mobile, 2/3 width on tablet -->
注意:根据下面的评论,给定屏幕尺寸的网格类适用于该屏幕尺寸和更大,除非另一个声明覆盖它(即col-xs-6 col-md-4 跨越 6 xs 和sm上的列,以及md和lg上的4列,即使sm和lg从未明确声明过)
注意:如果你没有定义xs,它将默认为col-xs-12(即col-sm-6是sm、md和lg宽度的一半屏幕,但在xs 屏幕上为全宽)。
注意:如果您的.row 包含超过 12 个列,实际上完全可以,只要您知道它们会如何反应。 --这是一个有争议的问题,并不是每个人都同意。