Bootstrap基本使用

Bootstrap是Twitter推出的一个由动态CSS语言Less写成的开源CSS/HTML框架(同时提供Sass 移植版代码)。Bootstrap提供了全面的基本及组件样式并自带了13个jQuery插件(模态对话框、标签页、滚动条、弹出框等),可满足常用开发需要,而且还根据需要定制。另外,Bootstrap提供了优雅的HTML和CSS规范,使用者也可以参考学习。本文作者(jawidx)仅在结构层面对Bootstrap进行介绍。

工具/原料

  • Bootstrap

全局样式

  1. 1

    Bootstrap 中用到一些 HTML元素和CSS属性需要将页面设置为 HTML5 文档类型,即在页面顶部添加“<!DOCTYPE html>”

  2. 2

    布局容器:Bootstrap 需要为页面内容和栅格系统包裹一个 .container或container-fluid(占据全部视口viewport的容器)容器。

  3. 3

    栅格系统,Bootstrap 提供了一套最多12列的流式栅格系统,通过 .row表示行 和 .col-xs-4 这种表示宽度的列快速创建栅格布局。

  4. 4

    Bootstrap 排版、链接样式设置了基本的全局样式。

    font-size 设置为 14px,line-height 设置为 1.428。

    <p> (段落)元素还被设置了等于 1/2 行高(即 10px)的底部外边距(margin)。

    END

基础样式

  1. 1

    【排版】,

    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> 内的短语及其描述排在一行。

  2. 2

    【代码】

    <code> 标签包裹内联样式的代码片段,

    <kbd> 标签标记用户通过键盘输入的内容,

    <pre> 展示代码块 。可用pre-scrollable 类设置最高350px带垂直滚动条。

    <var> 标签标记变量,

    <samp> 标签标记程序输出的内容。

  3. 3

    【表格】

    .table 类指定基本样式,

    .table-striped 条纹样式,

    .table-bordered 类为边框样式,

    .table-hover 类带鼠标悬停样式,

    .table-condensed 类紧凑样式。

    状态类(行或单元格设置颜色):active,success,info,warning,info。

    将任何 .table 元素包裹在 .table-responsive 元素内,即可创建响应式表格,其

    响应式表格: 会在小屏幕设备上(小于768px)水平滚动。当屏幕大于 768px 宽度时,水平滚动条消失。

  4. 4

    【表单】

    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)”级辅助文本。

  5. 5

    【按钮】

    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. 6

    【图片】

    图片形状,img-rounded,img-circle,img-thumbnail,IE8 不支持 CSS3 中的圆角属性。

  7. 7

    【辅助】

    text-muted、text-primary、text-success、text-info、text-warning、text-danger

    bg-primary、bg-success、bg-info、bg-warning、bg-danger、

    三角符号,caret

    浮动

    居中

    END

组件样式

  1. 1

    【图标】

    200个来自 Glyphicon Halflings 的字体图标,

    图标类只能应用在空元素上,且不可与其它组件联合使用。

    <span class="glyphicon glyphicon-search"></span>

  2. 2

    【菜单】

    将下拉菜单触发器和下拉菜单都包裹在 .dropdown 里

    菜单对齐:默认情况下,下拉菜单自动沿着父元素的上沿和左侧被定位为 100% 宽度。 为 .dropdown-menu 添加 .dropdown-menu-right 类可以让菜单右对齐

    菜单分组:dropdown-header表描述项,.disabled 表禁用项

    向上弹出: .dropup 类就能使触发的下拉菜单朝上方打开

  3. 3

    【按钮组】

    按钮组.btn-group,通过.btn-group-* 指定组中按钮尺寸。

    按钮栏.btn-toolbar

    钮垂直堆叠排列显示btn-group-vertical

    两端对齐排列的按钮组btn-group-justified

  4. 4

    【导航】

    标签页.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 创建带有层次的导航结构(面包屑)。

  5. 5

    【分页】

    pagination,并根据情况对页码使用.disabled 类、 .active 类。

    .pagination-lg 或 .pagination-sm 类提供了额外可供选择的尺寸。

    pager上一页和下一页的简单翻页。并可通过previous,next类标示。

  6. 6

    【标签】

    label标签基类,可通过label-default, label-primary, label-success, label-info, label-warning, label-danger改变标签的外观。

    badge,可以很醒目的展示新的或未读的信息条目。

  7. 7

    【其它】

    缩略图

    提示框

    进度条

    媒体对象等

    END

定制样式

  1. 1

    BootStrap提供了根据自己需要的组件及jquery插件进行定制,使用者也可以直接修改Less源码。

    END

总结

  1. 本篇经验仅从全局简单介绍Bootstrap的内容,细节部分并不具体,Bootstrap的使用非常灵活,可以对各种组件进行合并使用(如:为标签页项 添加带下拉菜单),建议使用过程中实时参考官方文档,官方文档有更详细的下载及使用说明,针对具体样式有直观样例,而且有丰富的主题案例。

时间: 2024-10-02 23:46:49

Bootstrap基本使用的相关文章

Bootstrap + AngularJS+ Ashx + SQL Server/MySQL

去年年底12月,为适应移动端浏览需求,花了1个月时间学习Bootstrap,并将公司ASP网站重构成ASP.NET. 当时采取的网站架构: Bootstrap + jQuery + Ashx + SQL Server 时间紧,没人带,只能硬着头皮,最后如期完成,但是也遗留了几个问题. 问题: 1.页面查询条件太复杂,太多的checkbox,jQuery操作DOM虽然方便,但是组合成json提交给后端还是比较麻烦,有没有天然支持json的前端框架或者脚本语言? html控件做的任何修改,都自动保存

CSS,bootstrap表格控制当td内容过长时用省略号表示,以及在不使用bootstrap时过长也用省略号表示

首先需要在table中设置table-layout:fixed; <table style="table-layout:fixed"></table> 然后在表头th中设置每列的宽度 <table style="table-layout:fixed"> <th width="10%">Title01</th> <th width="20%">Title02

Bootstrap &amp; Font Awesome 学习笔记

学习网站:http://bootstrap.ninghao.net/index.html https://www.freecodecamp.cn http://www.runoob.com/bootstrap/bootstrap-tutorial.html Bootstrap 为快速简单的实施 Web 开发准备的前端架构. Bootstrap将会根据你的屏幕的大小来调整HTML元素的大小 -- 强调 响应式设计的概念. 通过响应式设计,你无需再为你的网站设计一个手机版的.它在任何尺寸的屏幕上看起

第二百三十八节,Bootstrap输入框和导航组件

Bootstrap输入框和导航组件 学习要点: 1.输入框组件 2.导航组件 3.导航条组件 本节课我们主要学习一下Bootstrap的两个个组件功能:输入框组件和导航导航条组件. 一.输入框组件 文本输入框就是可以在<input>元素前后加上文字或按钮,可以实现对表单控件的扩展. 在左侧添加文字 input-group-addon样式class类,写在input同级的span里,给输入框添加一个左片段(Bootstrap)input-group样式class类,写在input外层div里,将

第二百三十一节,Bootstrap 介绍

Bootstrap 介绍 学习要点: 1.Bootstrap 概述 2.Bootstrap 特点 3.Bootstrap 结构 4.创建第一个页面 5.学习的各项准备 本节课我们主要了解一下 Boostrap 历史.特点.用途,以及为什么选择 Boostrap 来开 发我们的 Web 项目. 一.Bootstrap 概述 Bootstrap 是由 Twitter 公司(全球最大的微博)的两名技术工程师研发的一个基于 HTML.CSS.JavaScript 的开源框架.该框架代码简洁.视觉优美,可

Flask---使用Bootstrap新建第一个demo

Flask---使用Bootstrap新建第一个demo 参考自http://www.jianshu.com/p/417bcbad82fb 还有<Flask web开发> 前端用到Bootstrap开源框架,Bootstrap是客户端框架,后台当然就是Flask了. 服务器需要做的只是提供引用了Bootstrap层叠样式表(CSS)和JS文件的html响应,并且在html.css和js代码中实例化需要的组件,这些操作的最理想的执行环境就是模板 关于模板的介绍及其实现原理:https://kb.

bootstrap中的对话框-dialog

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" /> <meta http-

bootstrap中的对话框-dialog-2

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" /> <meta http-

关于H5框架之Bootstrap的小知识

浏览器支持 旧的浏览器可能无法很好的支持 Bootstrap 支持 Internet Explorer 8 及更高版本的 IE 浏览器 CSS源码研究 我们不是在head里面引入了下面这些文件么 <!-- 新 Bootstrap 核心 CSS 文件 --> <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css"> &l

Bootstrap 之 Carousel

Bootstrap 轮播(Carousel)插件是一种灵活的响应式的向站点添加滑块的方式.除此之外,内容也是足够灵活的,可以是图像.内嵌框架.视频或者其他您想要放置的任何类型的内容. 如果您想要单独引用该插件的功能,那么您需要引用 carousel.js.或者,正如 Bootstrap 插件概览 一章中所提到,您可以引用 bootstrap.js 或压缩版的 bootstrap.min.js. 下面是一个简单的幻灯片,使用 Bootstrap 轮播(Carousel)插件显示了一个循环播放元素的