`
zzc1684
  • 浏览: 1222902 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Bootstrap 栅格系统的精妙之处

阅读更多

节选翻译自The Subtle Magic Behind Why the Bootstrap 3 Grid Works

从接触 Bootstrap 已经有很长时间了,给人的感觉是快速,简单,易上手,其中栅格系统是一个亮点:

一直感觉像 CSS 栅格系统之类的东西拿过来用就好了,不用深究背后的原理。直到有一天你发现简单的套用在稍复杂的页面上出现问题,间隔啊,内外边距啊,哪都不对劲儿。

当然会有这样的过程,然后随着知识的积累,可以去读一些 Bootstrap 的源码,结合文档会发现一些不是很理解的地方:

Rows must be placed within a .container (fixed-width) or .container-fluid (full-width) for proper alignment and padding.

“行(row)”必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。

CONTAINER

Container 有两个作用:

  1. 在随时可能的宽度变化(响应式)中提供宽度限制。当页面宽度变化,container 的宽度也随之变化。并且其中的 column 的宽度是基于百分比,所以他们的值不需要变化。

  2. 提供一个水平方向的 padding,使其内部的内容不会接触到浏览器的边界,大小为15px,就是图片中粉红色的部分,作用会在下面说。

注意,不需要也不应该在 container 中嵌套另一个 container。
15px-padding

ROW

Row 是 column 直接存在的容器,按照文档描述 row 中最多可有12个 column,不过可以通过 nesting 的方式灵活扩展。同时作为都是左浮动的 column 的 wrapper,自带 clearfix 的性质。

同时 row 还有一个很特殊的地方,就是左右各有 -15px 的 margin,就是图片中的蓝色部分。这样也就抵消了上面提到的 container 中15px的 padding,那么为什么要这么折腾呢?接着看往下读。

注意:千万记住要把 row 放到 container 的内部,这样才能保证正常。
-15px-margin

COLUMN

注意啦,每个column 也会有15px的水平方向的 padding,也就是图片中黄色的部分,唉,先别急,会明白的。还记得上面提到的 row 的作用吗,colunmn 只能在 row 中生存,由于 row 的 margin 为-15px,那么位于两边的 column 就碰到了 container 的边界。但是 colunmn 本身又有 15px 的 padding 使得它其中的内容并不会碰到 container,同时 不同column的内容之间就有了30px的槽。结合图片看一下就一目了然了。

注意:一定要把 column 放到 row 里使用。
column

NESTING

当把上面一系列的 container, row, column 都设置好,就可以通过 nesting 扩展它的栅格系统了,也就是在 column 中直接嵌套 row,而不需要再套一层 container:
nesting

还记得 container 和 column 都有15px的 padding 吗,当 nesting 的时候 column 的作用也相当于 container 了,这样就可以实现任意的嵌套了。
nesting

这正是 Bootstrap 的栅格系统的最巧妙的地方!

分享到:
评论

相关推荐

    Bootstrap栅格系统.pptx

    Bootstrap栅格系统

    Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统

    Bootstrap栅格系统是一种基于12列的响应式布局框架,旨在帮助开发者构建适应不同设备屏幕大小的网页。这种系统能够确保网页在PC、平板、手机等...理解并熟练掌握Bootstrap的栅格系统是现代网页开发中的必备技能之一。

    bootstrap栅格系统响应式布局

    Bootstrap栅格系统是Web开发中的一个关键工具,它允许开发者创建具有高度响应性和自适应性的网页布局。这个系统是Bootstrap框架的核心组成部分,旨在简化多设备显示的复杂性,确保网页在PC、平板和手机等不同屏幕...

    03.Bootstrap栅格系统用法.rar

    这个压缩包“03.Bootstrap栅格系统用法.rar”显然包含了关于如何有效利用Bootstrap栅格系统的教学资源,例如视频文件“03.Bootstrap栅格系统用法.mp4”。在这里,我们将深入探讨Bootstrap栅格系统的基本原理、其在C#...

    bootstrap栅格系统.zip

    Bootstrap栅格系统是Web开发中最常用的前端框架之一,由Twitter开发并开源,它提供了一套响应式、移动设备优先的流式布局工具,使得开发者能够快速构建美观且适应各种屏幕尺寸的网页。这个名为"bootstrap栅格系统....

    响应式框架Bootstrap栅格系统的实例

    Bootstrap栅格系统实例详解 Bootstrap栅格系统是Bootstrap框架中的一种响应式布局系统,它可以根据不同的屏幕尺寸和设备类型来调整页面的布局和样式。下面我们来详解Bootstrap栅格系统的实例。 一、Bootstrap栅格...

    任务3 Bootstrap栅格系统.doc

    Bootstrap栅格系统是Web开发中一个非常重要的工具,它是一个响应式的布局框架,能够帮助开发者快速构建适应不同屏幕尺寸的网站。在“任务3 Bootstrap栅格系统”中,我们将学习如何利用Bootstrap栅格系统实现招商银行...

    02.Bootstrap栅格系统原理.rar

    Bootstrap栅格系统是其核心功能之一,它基于12列的网格布局,用于创建灵活、响应式的页面布局。这个系统通过将页面宽度分为12等份,允许开发者根据屏幕尺寸调整元素的宽度,从而实现不同设备上的良好显示效果。在...

    Bootstrap栅格源码.zip

    Bootstrap栅格系统是网页开发中的一个关键组成部分,它是一种用于创建响应式布局的工具,能够帮助开发者轻松地在不同屏幕尺寸上对齐和排列内容。Bootstrap框架由Twitter开发,是目前最流行、最广泛使用的前端开发...

    CSS框架(如Bootstrap, TailwindCSS):Bootstrap栅格系统详解.docx

    CSS框架(如Bootstrap, TailwindCSS):Bootstrap栅格系统详解.docx

    Bootstrap栅格系统的使用详解

    Bootstrap栅格系统是基于响应式设计原则开发的一套用于页面布局的网格系统。它允许开发者快速地创建一个响应式的网站布局,这个系统适应不同尺寸的屏幕设备,包括手机、平板、笔记本电脑和台式机等。Bootstrap栅格...

    Bootstrap栅格系统使用方法及页面调整变形的解决方法

    Bootstrap栅格系统使用方法及页面调整变形的解决方法 Bootstrap栅格系统是Bootstrap框架中的一个非常重要的组件,它可以帮助开发者快速地创建响应式页面布局。栅格系统的出现使得Bootstrap的跨设备布局显示变得...

    Bootstrap栅格系统简单实现代码

    Bootstrap栅格系统简单实现代码 Bootstrap栅格系统是Bootstrap框架中的一种布局系统,它可以帮助开发者快速创建响应式的网页布局。栅格系统的主要功能是将页面拆分为多个部分,各个部分可以根据不同的屏幕尺寸和...

    Bootstrap栅格系统的使用和理解2

    Bootstrap栅格系统是一种流行的网页布局工具,用于创建响应式的网页设计。这个系统基于12列的网格模型,允许开发者在不同设备和屏幕尺寸上灵活地安排内容。在Bootstrap框架中,栅格系统的设计目的是使页面内容能够...

    bootstrap.zip---栅格系统源码

    Bootstrap栅格系统是Web开发中广泛使用的前端框架,它的核心特性之一就是强大的响应式栅格布局。这个"bootstrap.zip"压缩包包含的就是Bootstrap栅格系统的源码,这为我们提供了深入理解其工作原理的机会。 ...

    bootstrap栅格系统

    栅格系统 更好地帮助你学习前端

    bootstrap栅格系统示例代码分享

    Bootstrap栅格系统示例代码分享 Bootstrap栅格系统是Bootstrap框架中的一种布局方式,通过使用栅格系统,可以快速创建响应式布局。下面将详细介绍Bootstrap栅格系统的示例代码和应用。 栅格系统的基本概念 栅格...

    栅格系统_栅格系统_bootstrap_源码

    Bootstrap栅格系统是目前最流行且广泛使用的框架之一,它通过行(row)和列(column)的组合,帮助开发者轻松创建响应式的、动态布局的网站。 Bootstrap栅格系统的核心理念是将页面分为12个等宽的列。这些列可以...

    Bootstrap入门书籍之(三)栅格系统

    Bootstrap栅格系统是网页设计和开发中的一个关键组成部分,尤其对于构建响应式网站至关重要。Bootstrap框架的栅格系统提供了一种高效、灵活的方式来组织和排列网页内容,使其能够在各种屏幕尺寸上良好展示,从手机到...

Global site tag (gtag.js) - Google Analytics