BootStrap学习
介绍
Bootstrap 是一个用于快速开发网页和Web应用的前端框架。以下是关于 Bootstrap 的详细介绍:
- 响应式设计:Bootstrap 提供了一系列的栅格系统、预定义样式和组件,可以轻松创建响应式的布局,确保网站在不同设备上都能有良好的显示效果。
- CSS 框架:
- 包含了重置样式(
Normalize.css),使得不同浏览器中的默认样式更加一致。 - 提供了大量的实用类(Utilities),如文本对齐、浮动、显示隐藏等,可以直接应用于HTML元素。
- 内置了丰富的组件样式,例如按钮、表单、导航栏、卡片等,开箱即用。
- 包含了重置样式(
- JavaScript 插件:Bootstrap 自带多个基于
jQuery的插件,如模态框(Modal)、下拉菜单(Dropdown)、轮播图(Carousel)等交互组件,简化了复杂功能的实现过程。 - Sass 支持:除了传统的CSS文件,Bootstrap 还提供了Sass版本,允许开发者自定义主题颜色、间距单位等变量,方便进行个性化定制。
- 文档与社区支持:官方维护着详细的文档,包含使用指南、示例代码以及
API说明;同时拥有庞大的社区资源,遇到问题时很容易找到解决方案或灵感。
下载与使用
BootStrap可以下载源码来使用
1 |
|
也可以使用CDN加速服务
1 |
|
布局容器和栅格网格系统
1.布局容器
.container类用于固定宽度并支持响应式布局的容器
1 | <div class="container"> |
container-fluid类用于100%宽度,占据全部视口(viewpoint)的容器
1 | <div class="container-fluid"> |
2.栅格网格系统
BootStrap的栅格网格系统是一个用于构建响应式布局的强大工具。它基于12列的布局,允许开发者根据屏幕的大小调整列的宽度。栅格系统主要由以下几个部分组成:
- 容器(Container):
.container类用于固定宽度的容器,.container-fluid类用于全宽的容器。 - 行(Row):
.row类用于创建一行,行内可以包含多个列。 - 列(Column):
.col-*类用于创建列,其中*可以是数字(表示列的宽度),也可以是断点(如sm、md、lg、xl),用于指定不同屏幕尺寸下的列宽。
1 |
|
1.列组合
列组合是指在同一行中组合不同宽度的列,以创建复杂的布局。Bootstrap 的栅格系统允许你在一行中使用多个列,并且这些列的宽度总和不应超过12列(除非使用偏移或其他布局技巧)。列总数大于12,会自动将这一整块换到下一行上
2.列偏移
列偏移用于在列的左侧添加空白空间,从而实现列的偏移效果。Bootstrap 提供了 offset-{breakpoint}-{number} 类来实现这一点,其中 {breakpoint} 是屏幕尺寸断点(如 sm、md、lg 等),{number} 是要偏移的列数。
例如:
1 | <div class="col-sm-12 col-md-2 col-lg-12 offset-lg-1 bg-success text-white p-3"> |
3.列排序
列排序在Bootstrap栅格系统中是指改变列的显示顺序,而不仅仅改变列的方向。可以使用order类来调整列的顺序。
使用order类进行列排序
Bootstrap提供了order类,允许在不同断点下灵活调整列的顺序。order类的格式为order-{size}-{value}
{size}是断点(如sm,md,lg等),如果不指定断点,则适用于所有屏幕尺寸。{value}是顺序值,范围为 0 到 12,默认情况下,没有设置order的列会按照 HTML 中的顺序排列,即order-0。
1 | <div class="col-sm-12 col-md-6 col-lg-1 bg-primary text-white p-2 order-2 order-md-1"> |
4.列嵌套
列嵌套是指在一个列内部再创建一个新的 .row 和 .col-* 结构,从而实现更复杂的布局。Bootstrap的栅格系统是基于12列的网格,允许你在任意列内再次使用完整的12列网格系统
- 复杂布局:有些设计需要在某些列中包含多个子列,以实现更复杂的布局。
- 响应式设计:嵌套可以帮助你更好地控制不同屏幕尺寸下的内容排列。
- 灵活性:通过嵌套,你可以更灵活地调整和组织页面内容。
1 | <div class="container"> |
常用样式
1.排版
1.1 标题
Bootstrap和普通的HTML页面一样,定义标题都是使用标签<h1>到<h6>,只不过Bootstrap覆盖了其默认的样式,使其在所有浏览器下显示的效果都一样。为了让非标题和标题使用相同的样式,还特意定义了.h1~.h6六个类名。同时后面可以紧跟着一行小的副标题<samll></small>或使用.small
1 | <h1>BootStrap heading <small>副标题</small></h1> |
1.2段落
段落是排版中另一个重要元素。通过.lead来突出强调内容,其作用就是增大文本字号,加粗文本,而且对行高、margin也做相应的处理。如下
<small>:小号字体
<b><strong>:加粗
<i><em>:斜体
1 | <p class="lead"><small>以后的</small><b>你</b>会<i>感谢</i>现在<em>努力</em>的<strong>自己</strong></p> |
1.3强调
在Bootstrap中,强调颜色(Contextual Colors)用于提供视觉上的强调和区分不同类型的内容。Bootstrap 提供了六个主要的强调颜色类,这些类可以应用于文本、背景等元素。以下是这六个强调颜色及其对应的类:
六个强调色
- Primary(主要色)
- 文本类:
text-primary - 背景类:
bg-primary - 边框类:
border-primary
- 文本类:
- Secondary(次要色)
- 文本类:
text-secondary - 背景类:
bg-secondary - 边框类:
border-secondary
- 文本类:
- Success(成功色)
- 文本类:
text-success - 背景类:
bg-success - 边框类:
border-success
- 文本类:
- Danger(危险色)
- 文本类:
text-danger - 背景类:
bg-danger - 边框类:
border-danger
- 文本类:
- Warning(警告色)
- 文本类:
text-warning - 背景类:
bg-warning - 边框类:
border-warning
- 文本类:
- Info(信息色)
- 文本类:
text-info - 背景类:
bg-info - 边框类:
border-info
- 文本类:
1.4对齐
style = "text-align: right":HTML样式自带
class = "text-left":左对齐
class = "text-right":右对齐
class = "text-center":居中对齐
class = "text-justify":两边对齐
1.5列表
在HTML中,列表结构主要有三种
无序列表(<ul></ul>)
有序列表(<ol></ol>)
定义列表(<dl><dt>...</dt> <dd>...</dd></dl>)
(1)去点列表
class ="list-unstyled"
1 | <ul class="list-unstyled"> |
(2)内联列表
class=”list-inline”,把垂直列表换成水平列表,而且去掉项目符号,保持水平显示。
1 | <ul class="list-inline"> |


