1
Bootstrap 中用到一些 HTML元素和CSS属性需要将页面设置为 HTML5 文档类型,即在页面顶部添加“<!DOCTYPE html>”
2
布局容器:Bootstrap 需要为页面内容和栅格系统包裹一个 .container或container-fluid(占据全部视口viewport的容器)容器。
3
栅格系统,Bootstrap 提供了一套最多12列的流式栅格系统,通过 .row表示行 和 .col-xs-4 这种表示宽度的列快速创建栅格布局。
4
Bootstrap 排版、链接样式设置了基本的全局样式。
font-size 设置为 14px,line-height 设置为 1.428。
<p>(段落)元素还被设置了等于 1/2 行高(即 10px)的底部外边距(margin)。
基础样式
【排版】,
1. 标题,可以用来.h1 到 .h6 类给内联属性的文本赋予标题样式,标题内通过<small>标签或带.small 类的元素标记副标题。
主体文本:.lead 类让段落突出显示。
2. 内联文本,使用<mark>标签表示标注文本,<del>删除,<s>无用,<ins>插入,<u>下划线,<small>小号(父容器字体大小的 85%),<strong>着重,<em>斜体。
3. 文本对齐类,text-left,text-center,text-right,text-justify,text-nowrap
4. 文本大小写类,text-lowercase,text-uppercase,text-capitalize
5. 缩略语类,为 <abbr>元素设置 title属性并使用.initialism 类让 font-size 变得稍微小些。例:<abbr title="attribute" class="initialism">attr</abbr>
6. 地址,以日常使用的格式呈现,在行结尾加 <br>保留需要的样式即可。
7. 引用,将 HTML 元素包裹在 <blockquote>中即可表现为引用样式。对于直接引用,建议用 <p>标签。
8. 列表,list-unstyled类移除默认 list-style 样式和左侧外边距的一组元素(只针对直接子元素)。list-inline类通过设置 display: inline-block并添加少量的内补(padding),将所有元素放置于同一行。dl-horizontal类让 <dl>内的短语及其描述排在一行。
【代码】
<code>标签包裹内联样式的代码片段,
<kbd>标签标记用户通过键盘输入的内容,
<pre>展示代码块 。可用pre-scrollable 类设置最高350px带垂直滚动条。
<var>标签标记变量,
<samp>标签标记程序输出的内容。
【表格】
.table 类指定基本样式,
.table-striped 条纹样式,
.table-bordered 类为边框样式,
.table-hover 类带鼠标悬停样式,
.table-condensed 类紧凑样式。
状态类(行或单元格设置颜色):active,success,info,warning,info。
将任何 .table 元素包裹在 .table-responsive 元素内,即可创建响应式表格,其
响应式表格: 会在小屏幕设备上(小于768px)水平滚动。当屏幕大于 768px 宽度时,水平滚动条消失。
【表单】
1. 基本实例,所有设置了 .form-control 类的 <input>、<textarea>和 <select>元素都将被默认设置宽度属性为 width: 100%。 将 label 元素和前面提到的控件包裹在 .form-group 中可以获得最好的排列。
不要讲表单组直接和输入框组混合使用。建议将输入框组嵌套到表单组中使用。
form-group,input-group,control-group,
2. 内联表单,<form>元素添加 .form-inline 类可使其内容左对齐并且表现为 inline-block 级别的控件。只适用于视口(viewport)至少在 768px 宽度时(视口宽度再小的话就会使表单折叠)。
在内联表单中单选/多选框控件的宽度设置为 width: auto
如果你没有为每个输入控件设置 label 标签,屏幕阅读器将无法正确识别。对于这些内联表单,你可以通过为label 设置 .sr-only 类将其隐藏。
3. 水平排列的表单
通过为表单添加 .form-horizontal 类改变 .form-group 的行为,使其表现为栅格系统中的行(row)
4. 多选和单选框
.radio、.radio-inline、.checkbox、.checkbox-inline 。
5. 静态控件
水平布局的表单中,如需将一行纯文本和 label 元素放置于同一行,为 <p>元素添加 .form-control-static类即可。
6. 控件状态
.disabled类禁用控件,为<fieldset>设置disabled 时则禁用包含的所有控件。
a标签不受此类影响。
readonly 属性可以禁止用户输入
.has-warning、.has-error 或 .has-success 类到这些控件的父元素即可。任何包含在此元素之内的 .control-label、.form-control 和 .help-block 元素都将接受这些校验状态的样式。
你还可以针对校验状态为输入框添加额外的图标(注意依赖于label标签)。只需设置相应的 .has-feedback 类并添加正确的图标即可。
7. 控件尺寸
通过 .input-lg .input-sm类似的类可以为控件设置高度,通过 .col-lg-* 类似的类可以为控件设置宽度
通过添加 .form-group-lg 或 .form-group-sm 类,为 .form-horizontal 包裹的 label 元素和表单控件快速设置尺寸。
用栅格系统中的列(column)包裹输入框或其任何父元素,都可很容易的为其设置宽度。
8. 辅助文本
help-block类,针对表单控件的“块(block)”级辅助文本。
【按钮】
1. 基本样式,btn、btn-default、btn-primary、btn-success、btn-info、btn-warning、btn-danger、active
2. 展现形式,btn-link、btn-block、close
3. 尺寸样式,.btn-lg、.btn-sm 、.btn-xs 。
可通过 <a>、<button>或 <input>元素应用按钮类,但建议用 <button>元素来获得在各个浏览器上获得相匹配的绘制效果。
6
【图片】
图片形状,img-rounded,img-circle,img-thumbnail,IE8 不支持 CSS3 中的圆角属性。
7
【辅助】
text-muted、text-primary、text-success、text-info、text-warning、text-danger
bg-primary、bg-success、bg-info、bg-warning、bg-danger、
三角符号,caret
浮动
居中
组件样式
【图标】
200个来自 Glyphicon Halflings 的字体图标,
图标类只能应用在空元素上,且不可与其它组件联合使用。
<span class="glyphicon glyphicon-search"></span>
【菜单】
将下拉菜单触发器和下拉菜单都包裹在 .dropdown 里
菜单对齐:默认情况下,下拉菜单自动沿着父元素的上沿和左侧被定位为 100% 宽度。 为 .dropdown-menu 添加 .dropdown-menu-right 类可以让菜单右对齐
菜单分组:dropdown-header表描述项,.disabled 表禁用项
向上d出: .dropup 类就能使触发的下拉菜单朝上方打开
【按钮组】
按钮组.btn-group,通过.btn-group-* 指定组中按钮尺寸。
按钮栏.btn-toolbar
钮垂直堆叠排列显示btn-group-vertical
两端对齐排列的按钮组btn-group-justified
【导航】
标签页.nav-tabs 类依赖 .nav 基类。
胶囊式标签页.nav-pills 类,添加 .nav-stacked 类改为垂直堆叠。
.nav-justified 类可以很容易的让标签页或胶囊式标签呈现出同等宽度。
navbar navbar-default
对于不包含在 <form>中的 <button>元素,加上 .navbar-btn 后,可以让它在导航条里垂直居中。
将表单放置于 .navbar-form 之内可以呈现很好的垂直对齐,
.navbar-text
.navbar-link
.navbar-left 和 .navbar-right 工具类让导航链接、表单、按钮或文本对齐。
.navbar-fixed-top 类可以让导航条固定在顶部
.navbar-fixed-bottom 类可以让导航条固定在底部
.navbar-static-top 类可让导航条随着页面向下滚动而消失。
.navbar-inverse 类可以改变导航条的外观。
breadcrumb 创建带有层次的导航结构(面包屑)。
【分页】
pagination,并根据情况对页码使用.disabled 类、 .active 类。
.pagination-lg 或 .pagination-sm 类提供了额外可供选择的尺寸。
pager上一页和下一页的简单翻页。并可通过previous,next类标示。
【标签】
label标签基类,可通过label-default, label-primary, label-success, label-info, label-warning, label-danger改变标签的外观。
badge,可以很醒目的展示新的或未读的信息条目。
7
【其它】
缩略图
提示框
进度条
媒体对象等
定制样式
1
BootStrap提供了根据自己需要的组件及jquery插件进行定制,使用者也可以直接修改Less源码。
END
总结
1
本篇经验仅从全局简单介绍Bootstrap的内容,细节部分并不具体,Bootstrap的使用非常灵活,可以对各种组件进行合并使用(如:为标签页项 添加带下拉菜单),建议使用过程中实时参考官方文档,官方文档有更详细的下载及使用说明,针对具体样式有直观样例,而且有丰富的主题案例。
其实自己写demo更多的时候都是手写css的,因为可以自己定制,自由控制且可以随便折腾,但有时候很多流水工厂式的样式写起来就太无趣了,所以还是用Bootstrap吧……
首先新建一个Html页面,把Bootstrap的样式与脚本引用塞进去:
这里有个问题,Bootstrap4.0以上是彻底不支持IE8以下的浏览器的,最新版已经把IE9抛弃了;= =
因为Bootstrap是JQuery依赖的,所以需要在脚本中引入JQuery,要注意的是,Bootstrap3.3.6版本以下是不支持JQuery3的,只能用JQuery2.
引入之后,在页面上插入container容器:
在这里是使用container还是container-fluid,主要看页面需求,两者区别在于:container-fluid是一个全宽的容器,使用整个宽度,而container则相当于一个margin:auto;的响应式的静态宽度div盒子;
两者的css设置:
标题与导航栏都可以写在header里:
在这里,导航使用nav标签创建的,Bootstrap里的导航条称为 navbar,navbar默认样式为白色,.navbar-inverse为颜色反白,可以得到黑色的导航条,需要其他颜色可以自己手动设置;
在 .navbar-collapse 中写入导航栏, .nav表明该ul为一导航栏,各li为导航类目;.navbar-nav说明是用于 navbar 中的导航
在li中设置.active,可以在JavaScript中控制鼠标click或者mouseover效果;
例如:
.navbar-collapse 是说在视口的宽度小于 768px 的时候,将导航变成垂直方向。
对比:
如果想要获得移动端的三明治型显示,需要额外进行修改:
这里<a>标签是左侧的链接,button为右侧的三明治导航按钮,span为导航按钮的设计构成(三条白线和边框……);
然后要完成点击三明治导航菜单的显示/隐藏,这时需要用到<button>里的data-target="#navbar-menu",这个 #navbar-menu 就是我们为原来的导航所起的 id 标识。
其中showoff 和mainnav分别是给button 和div .navbar-collapse添加的id;
页面主体如果是传统样式,符合栅格化,则使用栅格化样式最快捷;
栅格样式具体可以参阅 Bootstrap文档 ;
以两栏布局为例:
然后设置侧边栏,侧边栏也可以设置为导航nav;
使用nav-tabs和nav-stacked设置导航栏外观;
这样主题搭建就完成了。
ref:
20分钟打造你的Bootstrap站点
Bootstrap 中文文档
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)