这是一段典型的html typical HTML file:
<!DOCTYPE html> <html> <head> <title>Bootstrap 101 Template</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body> <h1>Hello, world!</h1> <script src="http://code.jquery.com/jquery.js"></script> </body> </html>
To make this a Bootstrapped template, just include the appropriate CSS and JS files:
<!DOCTYPE html> <html> <head> <title>Bootstrap 101 Template</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- Bootstrap --> <link href="css/bootstrap.min.css" rel="stylesheet" media="screen"> </head> <body> <h1>Hello, world!</h1> <script src="http://code.jquery.com/jquery.js"></script> <script src="js/bootstrap.min.js"></script> </body> </html>
And you're set! With those two files added, you can begin to develop any site or application with Bootstrap.
全局设定global setting:
Requires HTML5 doctype
Bootstrap makes use of certain HTML elements and CSS properties that require the use of the HTML5 doctype. Include it at the beginning of all your projects.
Bootstrap用到的HTML元素和CSS属性需要HTML5 doctype。因此每个使用Bootstrap的页面都应该包启HTML5声明。
<!DOCTYPE html> <html lang="en"> ... </html>
Typography and links
Bootstrap sets basic global display, typography, and link styles. Specifically, we:
- Remove
margin
on the body - Set
background-color: white;
on thebody
- Use the
@baseFontFamily
,@baseFontSize
, and@baseLineHeight
attributes as our typographic base - Set the global link color via
@linkColor
and apply link underlines only on:hover
These styles can be found within scaffolding.less.
Reset via Normalize
With Bootstrap 2, the old reset block has been dropped in favor of Normalize.css, a project by Nicolas Gallagher and Jonathan Neal that also powers the HTML5 Boilerplate. While we use much of Normalize within our reset.less, we have removed some elements specifically for Bootstrap.
Default grid system
Live grid example
The default Bootstrap grid system utilizes 12 columns, making for a 940px wide container without responsive features enabled. With the responsive CSS file added, the grid adapts to be 724px and 1170px wide depending on your viewport. Below 767px viewports, the columns become fluid and stack vertically.
做为框架默认的一部分,Bootstrap提供了940px宽, 12列的栅格系统(没有交互式开启)。如果引入了responsive css文件,那么就会依据你的设备viewport来更改宽度。如果设备在767以下,列就会变成流动
Basic grid HTML
For a simple two column layout, create a .row
and add the appropriate number of .span*
columns. As this is a 12-column grid, each.span*
spans a number of those 12 columns, and should always add up to 12 for each row (or the number of columns in the parent).
因为他是一个12 column的网格,span数加起来总是要等于12或等于他的parent的宽度。
<div class="row"> <div class="span4">...</div> <div class="span8">...</div> </div>
Given this example, we have .span4
and .span8
, making for 12 total columns and a complete row.
(row内的所有span都位于同一行内
Offsetting columns
Move columns to the right using .offset*
classes. Each class increases the left margin of a column by a whole column. For example,.offset4
moves .span4
over four columns.
移动列到右边使用offset类,美国类增加左边距。例如:offset4移动span4 4个列。
<div class="row"> <div class="span4">...</div> <div class="span3 offset2">...</div> </div>
Nesting columns
To nest your content with the default grid, add a new .row
and set of .span*
columns within an existing .span*
column. Nested rows should include a set of columns that add up to the number of columns of its parent.
列的内嵌
在Bootstrap中使用静态(non-fluid)栅格很容易实现内嵌, 只要在一个已存在的 .span*
列中,嵌套一个新的 .row
列,然后在 .row
列中再添加一组 .span*
列即可。
<div class="row"> <div class="span9"> Level 1 column <div class="row"> <div class="span6">Level 2</div> <div class="span3">Level 2</div> </div> </div> </div>
猜一下怎么显示:
Live fluid grid example 流动网格系统
The fluid grid system uses percents instead of pixels for column widths. It has the same responsive capabilities as our fixed grid system, ensuring proper proportions for key screen resolutions and devices.
基于百分比,而非像素
流式栅格系统中的列宽使用百分比计算宽度而非像素。与像素栅格布局一样,Bootstrap根据设备和分辨率不同提供了不同的响应性方案。
Basic fluid grid HTML
Make any row "fluid" by changing .row
to .row-fluid
. The column classes stay the exact same, making it easy to flip between fixed and fluid grids.
把固定布局变成流式布局很简单,把 .row
变成 .row-fluid
即可,列内容不变,因此在流式布局和固定布局之间转换非常简单。
<div class="row-fluid"> <div class="span4">...</div> <div class="span8">...</div> </div>
Fluid offsetting
Operates the same way as the fixed grid system offsetting: add .offset*
to any column to offset by that many columns.
<div class="row-fluid"> <div class="span4">...</div> <div class="span4 offset2">...</div> </div>
Fluid nesting
Fluid grids utilize nesting differently: each nested level of columns should add up to 12 columns. This is because the fluid grid uses percentages, not pixels, for setting widths.
流式列的内嵌
流式列的内嵌稍稍有点不同:嵌套column level应该加起来为12,因为所有的内嵌列都是按比例分配父列的100%宽度。
<div class="row-fluid"> <div class="span12"> Fluid 12 <div class="row-fluid"> <div class="span6"> Fluid 6 <div class="row-fluid"> <div class="span6">Fluid 6</div> <div class="span6">Fluid 6</div> </div> </div> <div class="span6">Fluid 6</div> </div> </div> </div>
怎么显示?
Fixed layout固定布局
Provides a common fixed-width (and optionally responsive) layout with only <div class="container">
required.
用 <div class="container">
实现的简单的中央布局的页面,默认为940px宽。
<body> <div class="container"> ... </div> </body>
Fluid layout
Create a fluid, two-column page with <div class="container-fluid">
—great for applications and docs.
<div class="container-fluid">
提供灵活的页面结构,定义了最小和最大宽度,拥有一个左边栏。很适合做应用和文档。<div class="container-fluid"> <div class="row-fluid"> <div class="span2"> <!--Sidebar content--> </div> <div class="span10"> <!--Body content--> </div> </div> </div>
Responsive design
Enabling responsive features
Turn on responsive CSS in your project by including the proper meta tag and additional stylesheet within the <head>
of your document. If you've compiled Bootstrap from the Customize page, you need only include the meta tag.
- <metaname="viewport"content="width=device-width, initial-scale=1.0">
- <linkhref="assets/css/bootstrap-responsive.css"rel="stylesheet">
Heads up! Bootstrap doesn't include responsive features by default at this time as not everything needs to be responsive. Instead of encouraging developers to remove this feature, we figure it best to enable it as needed.