学习网址:http://www.runoob.com/bootstrap/bootstrap-tutorial.html
Bootstrap是 Twitter写的,是目前最流行的前端框架
Bootstrap一般使用Html5文档类型 即:
如果在 Bootstrap 创建的网页开头不使用 HTML5 的文档类型,您可能会面临一些浏览器显示不一致的问题,甚至可能面临一些特定情境下的不一致,以致于您的代码不能通过 W3C 标准的验证
12个Bootstrap插件
对话框、下拉项、滚动侦听、可切换的标签页、工具提示、弹出提示、通知消息、按钮、折叠、轮播、输入提醒、过渡效果
轮播:
将要设置轮播的容器添加carousel类
在放置要轮播内容的容器添加carousel-inner类
data-slide导航上一个或下一个条目
可以通过JS代码添加轮播
$ ( '.carousel' ). carousel ()
interval: 规定幻灯片轮换的等待时间,以毫秒为单位
pause: 规定当鼠标停留在幻灯片区域即暂停轮播,鼠标离开即启动轮播
模态框:
下拉项:
在一个 .btn-group 中放置按钮和下拉菜单即可。您也可以使用 来指示按钮作为下拉菜单
可分割按钮: 分割按钮的左边是原始的功能,右边是显示下拉菜单的切换
菜单也可以往上拉伸的,只需要简单地向父 .btn-group 容器添加 .dropup
可使用 < li class = " divider " > li >来分割下来菜单
折叠:
提示工具:
< a href = " # " class = " tooltip-test " data-toggle = " tooltip " data-placement = " left " title = " 左侧的 Tooltip " > 左侧的 Tooltip a >
CSS
移动设备优先
Bootstrap 3 默认的 CSS 本身就对移动设备友好支持
在移动设备中适当的绘制和触屏缩放:
将宽度设置为device-width确保网站正确呈现在不同设备上,initial-scale=1.0确保页面加载时以1:1比例呈现
在移动设备浏览器上,通过为 viewport meta 标签添加 user-scalable=no 可以禁用其缩放(zooming)功能
maximum-scale=1.0 与 user-scalable=no 一起使用。这样禁用缩放功能后,用户只能滚动屏幕,就能让您的网站看上去更像原生应用的感觉
这种方式我们并不推荐所有网站使用,还是要看您自己的情况而定!
响应式图像
通过添加img-responsive class 可以让Bootstrap 3中的图像对响应式布局支持更友好
.img-responsive {
display: inline-block;
height: auto;
max-width: 100%;}
全局显示、排版和链接
基本的全局显示
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 14px;
line-height: 1.428571429;
color: #333333;
background-color: #ffffff;}
排版
使用 @font-family-base、 @font-size-base 和 @line-height-base 属性作为排版样式
链接样式
通过属性 @link-color 设置全局链接的颜色
a:hover,
a:focus {
color: #2a6496;
text-decoration: underline;}
a:focus {
outline: thin dotted #333;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
当鼠标悬停在链接上,或者点击过的链接,颜色会被设置为 #2a6496。同时,会呈现一条下划线。
除此之外,点击过的链接,会呈现一个颜色码为 #333 的细的虚线轮廓。另一条规则是设置轮廓为 5 像素宽,且对于基于 webkit 浏览器有一个 -webkit-focus-ring-color 的浏览器扩展。轮廓偏移设置为 -2 像素。
以上所有这些样式都可以在 scaffolding.less 中找到
避免跨浏览器的不一致
Bootstrap使用Normalize来建立跨浏览器的一致性 Normalize.css是一个很小的CSS文件,在HTML元素的默认样式中提供了更好的跨浏览器一致性
容器
class="container" Bootstrap 3 的 container class 用于包裹页面上的内容
.container {
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;}
Bootstrap浏览器/设备支持
Bootstrap网格系统
bootstrap提供了一套响应式、移动设备优先的流式网格系统,随着屏幕或视口(viewport)尺寸的增加,系统自动分为最多12列
网页设计中的网格用于组织内容,让网站易于浏览,并降低用户端的负载
Bootstrap 包含了一个响应式的、移动设备优先的、不固定的网格系统,可以随着设备或视口大小的增加而适当地扩展到 12 列。它包含了用于简单的布局选项的预定义类,也包含了用于生成更多语义布局的功能强大的混合类
媒体查询
/* 超小设备(手机,小于 768px) *//* Bootstrap 中默认情况下没有媒体查询 */
/* 小型设备(平板电脑,768px 起) */
@media (min-width: @screen-sm-min) { ... }
/* 中型设备(台式电脑,992px 起) */
@media (min-width: @screen-md-min) { ... }
/* 大型设备(大台式电脑,1200px 起) */
@media (min-width: @screen-lg-min) { ... }
网格选项
Bootstrap排版
Bootstrap 使用 Helvetica Neue、 Helvetica、 Arial 和 sans-serif 作为其默认的字体栈
内联子标题
如果需要向任何标题添加一个内联子标题,只需要简单地在元素两旁添加 ,或者添加 .small class,这样子您就能得到一个字号更小的颜色更浅的文本
引导主体副本
为了给段落添加强调文本,则可以添加 class="lead",这将得到更大更粗、行高更高的文本
强调
HTML 的默认强调标签 (设置文本为父文本大小的 85%)、(设置文本为更粗的文本)、(设置文本为斜体)
缩写
HTML
元素提供了用于缩写的标记,比如 WWW 或 HTTP。Bootstrap 定义 元素的样式为显示在文本底部的一条虚线边框,当鼠标悬停在上面时会显示完整的文本(只要您为 title 属性添加了文本)。为了得到一个更小字体的文本,请添加 .initialism 到
地址
使用
标签,您可以在网页上显示联系信息。由于 默认为 display:block;,您需要使用
标签来为封闭的地址文本添加换行
引用
您可以在任意的 HTML 文本旁使用默认的
。其他选项包括,添加一个 标签来标识引用的来源,使用 class .pull-right 向右对齐引用
列表
Bootstrap 支持有序列表、无序列表和定义列表。
有序列表 :有序列表是指以数字或其他有序字符开头的列表。
无序列表 :无序列表是指没有特定顺序的列表,是以传统风格的着重号开头的列表。如果您不想显示这些着重号,您可以使用 class .list-unstyled 来移除样式。您也可以通过使用 class .list-inline 把所有的列表项放在同一行中。
定义列表 :在这种类型的列表中,每个列表项可以包含 和 元素。 代表 定义术语 ,就像字典,这是被定义的属于(或短语)。接着, 是 的描述。您可以使用 class dl-horizontal 把 行中的属于与描述并排显示
Bootstrap代码
Bootstrap 允许您以两种方式显示代码
Bootstrap表格
表格类
, 和 类
响应式表格
通过把任意的 .table 包在 .table-responsive class 内,您可以让表格水平滚动以适应小型设备(小于 768px)。当在大于 768px 宽的大型设备上查看时,您将看不到任何的差别
表单
垂直或基本表单
基本的表单结构是 Bootstrap 自带的,个别的表单控件自动接收一些全局样式。下面列出了创建基本表单的步骤:
向父
把标签和控件放在一个带有 class .form-group 的 中。这是获取最佳间距所必需的。
向所有的文本元素 、
内联表单
如果需要创建一个表单,它的所有元素是内联的,向左对齐的,标签是并排的,请向
支持的表单控件
输入框(Input)
最常见的表单文本字段是输入框 input。用户可以在其中输入大多数必要的表单数据。Bootstrap 提供了对所有原生的 HTML5 的 input 类型的支持,包括: text、password、datetime、datetime-local、date、month、time、week、number、email、url、search、tel 和 color 。适当的 type 声明是必需的,这样才能让 input 获得完整的样式
标签
文本框(Textarea)
当您需要进行多行输入的时,则可以使用文本框 textarea。必要时可以改变 rows 属性(较少的行 = 较小的盒子,较多的行 = 较大的盒子)
复选框(Checkbox)和单选框(Radio)
复选框和单选按钮用于让用户从一系列预设置的选项中进行选择。
当创建表单时,如果您想让用户从列表中选择若干个选项时,请使用 checkbox 。如果您限制用户只能选择一个选项,请使用 radio 。
对一系列复选框和单选框使用 .checkbox-inline 或 .radio-inline class,控制它们显示在同一行上
按钮
图片
Bootstrap 提供了三个可对图片应用简单样式的 class:
.img-rounded :添加 border-radius:6px 来获得图片圆角。
.img-circle :添加 border-radius:50% 来让整个图片变成圆形。
.img-thumbnail :添加一些内边距(padding)和一个灰色的边框。
响应式图片
通过在
标签添加 .img-responsive 类来让图片支持响应式设计。 图片将很好地扩展到父元素。
.img-responsive 类将 max-width: 100%; 和 height: auto; 样式应用在图片上
Bootstrap 辅助类
文本
背景
其他
布局组件
字体图标 Bootstrap 捆绑了 200 多种字体格式的字形
用法
如需使用图标,只需要简单地使用下面的代码即可。请在图标和文本之间保留适当的空间。
定制字体图标
定制字体尺寸
定制字体颜色
应用文本阴影
下拉菜单
对齐
通过向 .dropdown-menu 添加 class .pull-right 来向右对齐下拉菜单
标题
您可以使用 class dropdown-header 向下拉菜单的标签区域添加标题
按钮组
按钮组允许多个按钮被堆叠在同一行上。当你想要把按钮对齐在一起时,这就显得非常有用。您可以通过 Bootstrap 按钮(Button) 插件 添加可选的 JavaScript 单选框和复选框样式行为
嵌套
您可以在一个按钮组内嵌套另一个按钮组,即,在一个 .btn-group 内嵌套另一个 .btn-group 。当您向让下拉菜单与一系列按钮组合使用时,就会用到这个
按钮下拉菜单
如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可。您也可以使用 来指示按钮作为下拉菜单
分割的按钮下拉菜单
分割的按钮下拉菜单使用与下拉菜单按钮大致相同的样式,但是对下拉菜单添加了原始的功能。分割按钮的左边是原始的功能,右边是显示下拉菜单的切换
按钮下拉菜单的大小
您可以使用带有各种大小按钮的下拉菜单: .btn-large、.btn-sm 或 .btn-xs
按钮上拉菜单
菜单也可以往上拉伸的,只需要简单地向父 .btn-group 容器添加 .dropup 即可
输入框组
输入框组的大小
您可以通过向 .input-group 添加相对表单大小的 class(比如 .input-group-lg、input-group-sm、input-group-xs )来改变输入框组的大小。输入框中的内容会自动调整大小
复选框和单选插件
您可以把复选框和单选插件作为输入框组的前缀或者后缀元素
带有下拉菜单的按钮
在输入框组中添加带有下拉菜单的按钮,只需要简单地在一个 .input-group-btn class 中包裹按钮和下拉菜单即可
分割的下拉菜单按钮
在输入框组中添加带有下拉菜单的分割按钮,使用与下拉菜单按钮大致相同的样式,但是对下拉菜单添加了主要的功能
JS插件
Bootstrap 自带 12 种 jQuery 插件,扩展了功能,可以给站点添加更多的互动。即使您不是一名高级的 JavaScript 开发人员,您也可以着手学习 Bootstrap 的 JavaScript 插件。
利用 Bootstrap 数据 API(Bootstrap Data API),大部分的插件可以在不编写任何代码的情况被触发
引用插件的两种方式: 单独引用:单独导入相关的插件
同时引用:使用bootstrap.js或压缩版的bootstrap.min.js
所有的插件依赖于 jQuery。所以必须在插件文件之前引用 jQuery。请访问 bower.json 查看 Bootstrap 当前支持的 jQuery 版本
过渡效果Transition插件
Transition.js 是 transitionEnd 事件和 CSS 过渡效果模拟器的基本帮助器类。它被其他插件用来检查 CSS 过渡效果支持,并用来获取过渡效果
模态框Modal插件 ( modal.js )
模态框(Modal)是覆盖在父窗体上的子窗体。通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动。子窗体可提供信息、交互等
用法:
您可以切换模态框(Modal)插件的隐藏内容:
通过 data 属性 :在控制器元素(比如按钮或者链接)上设置属性 data-toggle="modal" ,同时设置 data-target="#identifier" 或 href="#identifier" 来指定要切换的特定的模态框(带有 id="identifier")。
通过 JavaScript :使用这种技术,您可以通过简单的一行 JavaScript 来调用带有 id="identifier" 的模态框:
$('#identifier').modal(options)
data-target="#myModal" 是您想要在页面上加载的模态框的目标。您可以在页面上创建多个模态框,然后为每个模态框创建不同的触发器。现在,很明显,您不能在同一时间加载多个模块,但您可以在页面上创建多个在不同时间进行加载
注意两点:
第一是 .modal,用来把
内容识别为模态框
第二是 .fade class.当模态框被切换时,它会引起内容淡入淡出
aria-labelledby="myModalLabel" ,该属性引用模态框的标题
属性 aria-hidden="true" 用于保持模态窗口不可见,直到触发器被触发为止(比如点击在相关的按钮上)
定义模态框的步骤
一、先给一个按钮或者链接添加属性data-toggle和属性data-target.
二、给模态框的div的类加上modal和fade.
三、给模态框的头部,正文,尾部的div里面加上类modal-title、modal-body、modal-footer.(在关闭按钮加上 类data-dismiss属性 ×;转移字符可以当关闭符号)
下拉菜单(Dropdown)插件 dropdown.js
步骤:
一、新建ul li菜单,然后在需要增加下拉菜单的那一个li添加dropdown类
二、在新增的那个li里面加入一个超链接,并且添加类dropdown-toggle和data-toggle=‘dropdown’之后再添加一组ul li,ul添加dropdown-menu类