2011年,twitter的“一小撮”工程师为了提高他们内部的分析和管理能力,用业余时间为他们的产品构建了一套易用、优雅、灵活、可扩展的前端工具集--BootStrap。Bootstrap由MARK OTTO和Jacob Thornton所设计和建立,在github上开源之后,迅速成为该站上最多人watch&fork的项目。大量工程师踊跃为该项目贡献代码,社区惊人地活跃,代码版本进化非常快速,官方文档质量极其高(可以说是优雅),同时涌现了许多基于Bootstrap建设的网站:界面清新、简洁;要素排版利落大方。如下图所示:
https://kippt.com/
http://www.fleetio.com/
GitHub上这样介绍 bootstrap:简单灵活可用于架构流行的用户界面和交互接口的html,css,javascript工具集。基于html5、css3的bootstrap,具有大量的诱人特性:友好的学习曲线,卓越的兼容性,响应式设计,12列格网,样式向导文档,自定义JQuery插件,完整的类库,基于Less等。本系列教程遵循官方文档结构来介绍bootstrap,包括手脚架(Scaffolding),基础CSS,组件,javascript插件,使用LESS与自定义.本文主要介绍Bootstrap的基础布局--Scaffolding.
Bootstrap建立了一个响应式的12列格网布局系统,它引入了fixed和fluid-with两种布局方式。我们从全局样式(Global Style),格网系统(Grid System),流式格网(Fluid grid System),自定义(Customing),布局(Layouts),响应式设计(Responsive Design)这六五个方面深入讲解Boostrap的scaffolding.
全局样式(Global Style).Bootstrap要求html5的文件类型,所以必须在每个使用bootstrap页面的开头都引用:
<!DOCTYPE html>
<html lang="en">
...
</html>
同时,它通过Bootstrap.less文件来设置全局的排版和连接显示风格.其中去掉了Body的margin,使用@baseFontFamily,@baseFontSize,@linkColor等变量来控制基本排版。
格网系统(Grid System).默认的Bootstrap格网系统提供一个宽达940像素的,12列的格网。这意味着你页面默认宽度是940px,最小的单元要素宽度是940/12px.Bootstrap能够使得你的网页可以更好地适应多种终端设备(平板电脑,智能手机等)。默认格网系统直观概念如图1-1所示: 图1-1 默认格网系统(Default Grid System) 以下简单的代码则是实现图1-1中,第三列的宽度为4和宽度为8的两个div.
复制代码
<div class="row">
<div class="span4">...</div>
<div class="span8">...</div>
</div>
复制代码
2.2 偏移列. 有时候,页面要素前面需要一些空白,bootstrap提供了偏移列来实现,如图1-2所示:
图1-2 偏移列(Offset columns)
以下代码实现了是实现图1-2中,第一列的宽度为4和偏移度为4宽度为4的两个div.
复制代码
<div class="row">
<div class="span4">...</div>
<div class="span4 offset4">...</div>
</div>
复制代码
2.3 嵌套列. 嵌套列是容许用户实现更复杂的页面要素布局。在bootstrap中实现嵌套列非常简单,只需要在原有的div中加入.row 和相应的长度的span* div即可。 如图1-3所示:
图1-3 嵌套列(Nesting columns)
以下代码实现了是实现图1-3中,第一层的宽度为12和第二层两个宽度为6的两个div.
复制代码
<div class="row">
<div class="span12">
Level 1 of column
<div class="row">
<div class="span6">Level 2</div>
<div class="span6">Level 2</div>
</div>
</div>
</div>
复制代码
嵌套的div长度之和不能大于它的父div,否则会溢出叠加。各位可以试试将第一层的div长度改为其他值,看看效果。
流式格网系统(Fluid grid system).它使用%,而不是固定的px,来确定页面要素的宽度.只需要简单的将.row 改成.row-fluid ,就可以将fixed行改为fluid.如图1-4所示: 图1-4 流式格网系统(Fluid grid system) 以下代码实现了是实现图1-4中,两个不同长度的流式页面要素.
复制代码
<div class="row-fluid">
<div class="span4">...</div>
<div class="span8">...</div>
</div>
复制代码
嵌套的流式格网和嵌套的固定格网,稍微有些不同。嵌套流式格网(Fluid nesting)的子要素不用匹配父要素的宽度,子要素用100%来表示占满父要素的页面宽度。
自定义格网(Grid customization).Bootstrap允许通过修改variables.less的参数值来自定义格网系统。主要包括如表1-1所示的变量:
变量 默认值 说明
@gridColumns 12 列数
@gridColumnWidth 60px 每列的宽度
@gridGutterWidth 20px 列间距
表1-1 格网变量 我们通过修改以上值,并重新编译Bootstrap来实现自定义格网系统。如果添加新的列,需要同时修改grid.less.同样的,需要修改responsive.less来获得多设备兼容.
布局(Layout).本文最后我们讨论创建页面基础模板的布局。如前面所言,Bootstrap提供两种布局方式,包括固定(Fixed)和流式(Fliud)布局。如图1-5所示,左边为Fixed布局,右边为Fluid布局: 图1-5 布局(Layout) 固定布局代码如下:
复制代码
<body>
<div class="container">
...
</div>
</body>
复制代码
流式布局代码如下:
复制代码
<div class="container-fluid">
<div class="row-fluid">
<div class="span2">
<!--Sidebar content-->
</div>
<div class="span10">
<!--Body content-->
</div>
</div>
</div>
复制代码
如果对Bootstrap提供的布局不够满意,可以参见Less Frame Work 提供的模板。
最后,再次强调,官方文档极其优秀,强烈推荐各位直接参考和学习之。http://twitter.github.com/bootstrap/index.html
参考文献与延伸阅读:
1.Bootstrap的来由和发展。http://www.alistapart.com/articles/building-twitter-bootstrap/
2.Less与Sass的介绍与对比.http://coding.smashingmagazine.com/2011/09/09/an-introduction-to-less-and-comparison-to-sass/
3.Html5模板 http://html5boilerplate.com/
4.Html5与Bootstrap混合项目(H5BP)https://gist.github.com/1422879
5.20个有用的Bootstrap资源 http://www.webresourcesdepot.com/20-beautiful-resources-that-complement-twitter-bootstrap/
6.Bootstrap按钮生成器 http://charliepark.org/bootstrap_buttons/
7.前后端结合讨论 http://stackoverflow.com/questions/9525170/backend-technology-for-front-end-technologies-like-twitter-bootstrap
8. Bootstrap英文教程 http://webdesign.tutsplus.com/tutorials/htmlcss-tutorials/stepping-out-with-bootstrap-from-twitter/
分享到:
相关推荐
《bootstrap基础教程》对应源码,内容包括 13个章节对应的源码
BootStrap入门教程
BootStrap入门教程 BootStrap 是一套由 Twitter 的工程师创造的前端工具集,用于构建易用、优雅、灵活、可扩展的用户界面和交互接口。BootStrap 的主要特性有友好的学习曲线、卓越的兼容性、响应式设计、12 列格网...
Bootstrap教程通常会从基础开始,逐步深入讲解Scaffolding的各个方面,例如如何设置全局样式、如何使用格网系统构建页面布局、如何嵌套和偏移列以及如何实现响应式设计。通过实践和示例代码,开发者可以掌握如何在...
Bootstrap基础教程.pdf Bootstrap简易教程Bootstrap基础教程.pdf Bootstrap简易教程
BootStrap入门教程,网络资源整理,是学习BootStrap框架的入门材料
1. **基本结构**:了解如何在HTML文件中引入Bootstrap CSS和JS文件,以及如何设置基础的HTML结构,如`<html>`, `<head>` 和 `<body>`标签,以及如何使用`<div class="container">`来创建内容容器。 2. **导航**:...
总的来说,Bootstrap是一个强大的工具,它让开发者能够高效地构建响应式网站,而“Bootstrap初级PPT教程”是初学者理想的入门资料,将引导你一步步踏入这个精彩的前端世界。通过深入学习和实践,你将能够利用...
### Bootstrap入门教程知识点详解 #### 一、Bootstrap简介 Bootstrap是一款非常受欢迎的前端框架,它由Twitter的一群工程师为了提高内部产品的分析与管理能力而创建。最初的目标是为Twitter的产品开发一套易于使用...
Bootstrap 的教程通常按照这些核心概念进行组织,帮助初学者逐步掌握这个框架。通过学习和实践,开发者可以快速构建出美观且功能丰富的网页,大大提高开发效率。Bootstrap 的广泛社区支持和丰富的第三方插件也是其受...
此外,`BootStrap入门教程.doc`文档会详细讲解每个组件的用法和示例,建议配合实践阅读,以加深理解。 总之,Bootstrap是一个强大的工具,能够帮助开发者快速创建美观、响应式的网站。通过熟悉其基本结构、组件和...
Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。最近应公司要求,整理出了这个文档。
首先,让我们从BootStrap入门教程开始。这份教程会引导你了解Bootstrap的基本结构和如何快速启动一个新项目。在教程中,你会学习到: 1. **基本使用**:Bootstrap是如何通过HTML、CSS和JavaScript提供一系列预先...