首頁 web前端 js教程 Bootstrap框架的詳細講解(程式碼範例)

Bootstrap框架的詳細講解(程式碼範例)

Oct 15, 2018 pm 05:17 PM

這篇文章帶給大家的內容是關於Bootstrap框架的詳細講解(程式碼範例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

(免費課程推薦:bootstrap教學

Bootstrap介紹

Bootstrap是Twitter開源的基於HTML 、CSS、JavaScript的前端框架。

它是為實現快速開發網頁應用程式而設計的一套前端工具包。

它支援響應式佈局,並且在V3版本之後堅持行動裝置優先。

為什麼要使用Bootstrap?

在Bootstrap出現之前:

命名:重複、複雜、無意義(想個名字費勁)

樣式:重複、冗餘、不規範、不和諧

頁:錯亂、不規範、不和諧

在使用Bootstrap之後: 各種命名都統一且規範化。頁面風格統一,畫面和諧。

Bootstrap下載

官方網址:https://getbootstrap.com

中文網址:http://www.bootcss.com/

我們使用V3版本的Bootstrap,我們下載的是用於生產環境的Bootstrap。

Bootstrap環境建構

目錄結構:

bootstrap-3.3.7-dist/
├── css  // CSS文件
│   ├── bootstrap-theme.css  // Bootstrap主题样式文件
│   ├── bootstrap-theme.css.map
│   ├── bootstrap-theme.min.css  // 主题相关样式压缩文件
│   ├── bootstrap-theme.min.css.map
│   ├── bootstrap.css
│   ├── bootstrap.css.map
│   ├── bootstrap.min.css  // 核心CSS样式压缩文件
│   └── bootstrap.min.css.map
├── fonts  // 字体文件
│   ├── glyphicons-halflings-regular.eot
│   ├── glyphicons-halflings-regular.svg
│   ├── glyphicons-halflings-regular.ttf
│   ├── glyphicons-halflings-regular.woff
│   └── glyphicons-halflings-regular.woff2
└── js  // JS文件
    ├── bootstrap.js
    ├── bootstrap.min.js  // 核心JS压缩文件
    └── npm.js
登入後複製

處理依賴

由於Bootstrap的某些元件依賴jQuery,所以請確保下載對應版本的jQuery文件,來確保Bootstrap相關元件運作正常。

Bootstrap全域樣式

排版、按鈕、表格、表單、圖片等我們常用的HTML元素,Bootstrap中都提供了全域樣式。

我們只要在基本的HTML元素上透過設定class就能夠套用上Bootstrap的樣式,從而讓我們的頁面更美觀和諧。

標題相關

標題

<h1>一级标题36px</h1>
<h2>二级标题30px</h2>
<h3>三级标题24px</h3>
<h4>四级标题18px</h4>
<h5>五级标题14px</h5>
<h6>六级标题12px</h6>
<!--除了使用h标签,Bootstrap内置了相应的全局样式-->
<!--内联标签应用标题样式-->
<span class="h1">一级标题36px</span>
<span class="h2">二级标题30px</span>
<span class="h3">三级标题24px</span>
<span class="h4">四级标题18px</span>
<span class="h5">五级标题14px</span>
<span class="h6">六级标题12px</span>
登入後複製

副標題

<!--一级标题中嵌入小标题-->
<h1>一级标题<small>小标题</small></h1>
登入後複製

文字對齊

<!--文本对齐-->
<p class="text-left">文本左对齐</p>
<p class="text-center">文本居中</p>
<p class="text-right">文本右对齐</p>
登入後複製

#文字大小寫

<!--大小写-->
<p class="text-lowercase">Lowercased text.</p>
<p class="text-uppercase">Uppercased text.</p>
<p class="text-capitalize">Capitalized text.</p>
登入後複製

表格

#Class描述
#.table-striped
##.table-bordered有邊框的表格
.table-hover滑鼠懸停變色的表格
.table-condensed#緊縮型表格
.table-responsive回應式表格

##狀態類別Class.active.success.info#.warning
#描述
滑鼠停留在行或儲存格上時所設定的顏色
標識成功或積極的動作
#標識普通的提示訊息或動作
###標識警告或需要使用者註意###############.danger######## #標識危險或潛在的帶來負面影響的動作#############

表单

内联表单

表单状态

带图标的表单

按钮

<a class="btn btn-default" href="#" role="button">Link</a>
<button class="btn btn-default" type="submit">Button</button>
<input class="btn btn-default" type="button" value="Input">
<input class="btn btn-default" type="submit" value="Submit">
登入後複製

按钮样式

<!-- Standard button -->
<button type="button" class="btn btn-default">(默认样式)Default</button>
<!-- Provides extra visual weight and identifies the primary action in a set of buttons -->
<button type="button" class="btn btn-primary">(首选项)Primary</button>
<!-- Indicates a successful or positive action -->
<button type="button" class="btn btn-success">(成功)Success</button>
<!-- Contextual button for informational alert messages -->
<button type="button" class="btn btn-info">(一般信息)Info</button>
<!-- Indicates caution should be taken with this action -->
<button type="button" class="btn btn-warning">(警告)Warning</button>
<!-- Indicates a dangerous or potentially negative action -->
<button type="button" class="btn btn-danger">(危险)Danger</button>
<!-- Deemphasize a button by making it look like a link while maintaining button behavior -->
<button type="button" class="btn btn-link">(链接)Link</button>
登入後複製

按钮大小

<p>
  <button type="button" class="btn btn-primary btn-lg">(大按钮)Large button</button>
  <button type="button" class="btn btn-default btn-lg">(大按钮)Large button</button>
</p>
<p>
  <button type="button" class="btn btn-primary">(默认尺寸)Default button</button>
  <button type="button" class="btn btn-default">(默认尺寸)Default button</button>
</p>
<p>
  <button type="button" class="btn btn-primary btn-sm">(小按钮)Small button</button>
  <button type="button" class="btn btn-default btn-sm">(小按钮)Small button</button>
</p>
<p>
  <button type="button" class="btn btn-primary btn-xs">(超小尺寸)Extra small button</button>
  <button type="button" class="btn btn-default btn-xs">(超小尺寸)Extra small button</button>
</p>
登入後複製

图片

<img src="..." class="img-responsive" alt="Responsive image">
登入後複製

图片形状

<img src="..." alt="..." class="img-rounded">
<img src="..." alt="..." class="img-circle">
<img src="..." alt="..." class="img-thumbnail">
登入後複製

辅助类

文本颜色

<p class="text-muted">...</p>
<p class="text-primary">...</p>
<p class="text-success">...</p>
<p class="text-info">...</p>
<p class="text-warning">...</p>
<p class="text-danger">...</p>
登入後複製

背景颜色

<p class="bg-primary">...</p>
<p class="bg-success">...</p>
<p class="bg-info">...</p>
<p class="bg-warning">...</p>
<p class="bg-danger">...</p>
登入後複製

关闭按钮

<button type="button" class="close" aria-label="Close"><span aria-hidden="true">×</span></button>
登入後複製

下拉三角

<span class="caret"></span>
登入後複製

快速浮动

<div class="pull-left">...</div>
<div class="pull-right">...</div>
登入後複製

内容块居中

<div class="center-block">...</div>
登入後複製

清除浮动

<!-- Usage as a class -->
<div class="clearfix">...</div>
登入後複製

显示与隐藏

<div class="show">...</div>
<div class="hidden">...</div>
登入後複製

常用Bootstrap组件

  1. 字体图标

  2. 下拉菜单

  3. 按钮组

  4. 输入框俎

  5. 导航

  6. 分页

  7. 标签和徽章

  8. 页头

  9. 缩率图

  10. 进度条

模拟滚动的进度条:

var $d1 = $("#d1");
var width = 0;
var theID = setInterval(setValue, 200);
function setValue() {  
if (width === 100)
 {
    clearInterval(theID);
  } else {
    width++;
    $d1.css("width", width+"%").text(width+"%");
  }
}
登入後複製

响应式开发

为什么要进行响应式开发?

随着移动设备的流行,网页设计必须要考虑到移动端的设计。同一个网站为了兼容PC端和移动端显示,就需要进行响应式开发。

什么是响应式?

利用媒体查询,让同一个网站兼容不同的终端(PC端、移动端)呈现不同的页面布局。

用到的技术:

CSS3@media查询

用于查询设备是否符合某一特定条件,这些特定条件包括屏幕尺寸、是否可触摸、屏幕精度、横屏竖屏等信息。

常见属性:

  • device-width, device-height 屏幕宽、高

  • width,height 渲染窗口宽、高

  • orientation 设备方向

  • resolution 设备分辨率

语法:

@media mediatype and|not|only (media feature) {
    CSS-Code;
}
登入後複製

不同的媒体使用不同的stylesheet

<link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.css">
登入後複製

viewport

手机浏览器是把页面放在一个虚拟的"窗口"(viewport)中,通常这个虚拟的"窗口"(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户可以通过平移和缩放来看网页的不同部分。

设置viewport

一个常用的针对移动网页优化过的页面的 viewport meta 标签大致如下:

<meta name=”viewport” content=”width=device-width, initial-scale=1, maximum-scale=1″>
登入後複製

  • width:控制 viewport 的大小,可以指定的一个值,如果 600,或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。

  • height:和 width 相对应,指定高度。

  • initial-scale:初始缩放比例,也即是当页面第一次 load 的时候缩放比例。

  • maximum-scale:允许用户缩放到的最大比例。

  • minimum-scale:允许用户缩放到的最小比例。

  • user-scalable:用户是否可以手动缩放。

Bootstrap的栅格系统

  • container

  • row

  • column

注意事项: 使用Bootstrap的时候不要让自己的名字与Bootstrap的类名冲突。

JavaScript插件

下面常用的Bootatstrap自带插件

模态框

模态框的HTML代码放置的位置

务必将模态框的HTML代码放在文档的最高层级内(也就是说,尽量作为 body 标签的直接子元素),以避免其他组件影响模态框的展现和/或功能。

HTML代码:

<!-- 触发模态框的按钮 -->
<button type="button" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">
  Launch demo modal
</button>

<!-- 模态框 -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
      </div>
      <div class="modal-body">
        ...
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>
登入後複製

注意:

通过为模态框设置 .bs-example-modal-lg和 .bs-example-modal-sm来控制模态框的大小。

通过 .fade类来控制模态框弹出时的动画效果(淡入淡出效果)。

通过在 .modal-bodyp中设置 .row可以使用Bootstrap的栅格系统。

调用方式:

1.通过data属性

通过在一个触发弹出模态框的元素(例如:按钮)上添加 <span class="pln">data<span class="pun">-<span class="pln">toggle<span class="pun">=<span class="str">&quot;modal&quot;</span></span></span></span></span>属性,然后设置 <span class="pln">data<span class="pun">-<span class="pln">target<span class="pun">=<span class="str">&quot;#foo&quot;</span></span></span></span></span>属性或 <span class="pln">href<span class="pun">=<span class="str">&quot;#foo&quot;</span></span></span>属性,用来指向被控制的模态框。

&lt;button type=&quot;button&quot; data-toggle=&quot;modal&quot; data-target=&quot;#myModal&quot;&gt;显示模态框&lt;/button&gt;
登入後複製

2.通过JS代码调用

$(&#39;#myModal&#39;).modal(&quot;show&quot;);  // 显示
$(&#39;#myModal&#39;).modal(&quot;hide&quot;)   // 隐藏
登入後複製

常用参数:

名称可选值默认值描述
backdroptrue/false/'static'truefalse表示有没有遮罩层,'static'表示点击遮罩层不关闭模态框
keyboardtrue/falsetrue键盘上的 esc 键被按下时关闭模态框。
showtrue/falsetrue模态框初始化之后就立即显示出来。

方法:

$(&#39;#myModal&#39;).modal({
  keyboard: false
})
登入後複製

轮播图

HTML代码:

&lt;div id=&quot;carousel-example-generic&quot; class=&quot;carousel slide&quot; data-ride=&quot;carousel&quot;&gt;
  &lt;!-- Indicators --&gt;
  &lt;ol class=&quot;carousel-indicators&quot;&gt;
    &lt;li data-target=&quot;#carousel-example-generic&quot; data-slide-to=&quot;0&quot; class=&quot;active&quot;&gt;&lt;/li&gt;
    &lt;li data-target=&quot;#carousel-example-generic&quot; data-slide-to=&quot;1&quot;&gt;&lt;/li&gt;
    &lt;li data-target=&quot;#carousel-example-generic&quot; data-slide-to=&quot;2&quot;&gt;&lt;/li&gt;
  &lt;/ol&gt;
  &lt;!-- Wrapper for slides --&gt;
  &lt;div class=&quot;carousel-inner&quot; role=&quot;listbox&quot;&gt;
    &lt;div class=&quot;item active&quot;&gt;
      &lt;img src=&quot;...&quot; alt=&quot;...&quot;&gt;
      &lt;div class=&quot;carousel-caption&quot;&gt;
        ...
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class=&quot;item&quot;&gt;
      &lt;img src=&quot;...&quot; alt=&quot;...&quot;&gt;
      &lt;div class=&quot;carousel-caption&quot;&gt;
        ...
      &lt;/div&gt;
    &lt;/div&gt;
    ...
  &lt;/div&gt;
  &lt;!-- Controls --&gt;
  &lt;a class=&quot;left carousel-control&quot; href=&quot;#carousel-example-generic&quot; role=&quot;button&quot; data-slide=&quot;prev&quot;&gt;
    &lt;span class=&quot;glyphicon glyphicon-chevron-left&quot; aria-hidden=&quot;true&quot;&gt;&lt;/span&gt;
    &lt;span class=&quot;sr-only&quot;&gt;Previous&lt;/span&gt;
  &lt;/a&gt;
  &lt;a class=&quot;right carousel-control&quot; href=&quot;#carousel-example-generic&quot; role=&quot;button&quot; data-slide=&quot;next&quot;&gt;
    &lt;span class=&quot;glyphicon glyphicon-chevron-right&quot; aria-hidden=&quot;true&quot;&gt;&lt;/span&gt;
    &lt;span class=&quot;sr-only&quot;&gt;Next&lt;/span&gt;
  &lt;/a&gt;
&lt;/div&gt;
登入後複製

可以在为图片添加介绍信息:

&lt;div class=&quot;item&quot;&gt;
  &lt;img src=&quot;...&quot; alt=&quot;...&quot;&gt;
  &lt;div class=&quot;carousel-caption&quot;&gt;
    &lt;h3&gt;...&lt;/h3&gt;
    &lt;p&gt;...&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;
登入後複製

方法:

设置切换间隔为2秒,默认是5秒。

$(&#39;.carousel&#39;).carousel({
  interval: 2000
})
登入後複製

其他常用插件

FontAwesome字体

Font Awesome

参考网址 : https://fontawesome.com/?from=io

详细用法参见上述站点的Examples。

SweetAlert系列

SweetAlert

参考网址 : https://github.com/t4t5/sweetalert

SweetAlert2

参考网址 : https://github.com/sweetalert2/sweetalert2

SweetAlert 到 SweetAlert2 升级指南

参考网址 : https://github.com/sweetalert2/sweetalert2/wiki/Migration-from-SweetAlert-to-SweetAlert2

示例:

基本使用:

  1. swal("标题","内容","success);

使用SweetAlert在Ajax提交成功(done)或失败(error)时分别提示不用的内容。

这是更新之前版本的写法

function deleteRecord(recordID) {
    swal({
        title: &quot;确定要删除这个产品吗?&quot;,
        text: &quot;删除后可就无法恢复了。&quot;,
        type: &quot;warning&quot;,
        showCancelButton: true,
        closeOnConfirm: false,
        confirmButtonText: &quot;是的,我要删除!&quot;,
        confirmButtonColor: &quot;#ec6c62&quot;,
        cancelButtonText: &quot;容我三思&quot;
    }, function (isConfirm) {
        if (!isConfirm) return;
        $.ajax({
            type: &quot;post&quot;,
            url: &quot;/delete/&quot;,
            data: {&quot;id&quot;: recordID},
            success: function (data) {
                var dataObj = $.parseJSON(data);
                if (dataObj.status === 0) { //后端删除成功
                    swal(&quot;删除成功&quot;, dataObj.info, &quot;success&quot;);
                    $(&quot;#p-&quot; + recordID).remove()  //删除页面中那一行数据
                } else {
                    swal(&quot;出错啦。。。&quot;, dataObj.msg, &quot;error&quot;);  //后端删除失败
                }
            },
            error: function () {  // ajax请求失败
                swal(&quot;啊哦。。。&quot;, &quot;服务器走丢了。。。&quot;, &quot;error&quot;);
            }
        })
    });
}
登入後複製

更新之后用这么写

swal({
  title: &quot;这里写标题&quot;,
  text: &quot;这里放内容&quot;,
  icon: &quot;warning&quot;,  // 这里放图标的类型(success,warning,info,error)
  buttons: {
    cancel: {
      text: &quot;容我三思&quot;,
      visible: true,
      value: false
    },
    confirm: {
      text: &quot;我就是要删除&quot;
    }
  }
}).then(function (isConfirm) {
    if (isConfirm){
      swal(&quot;你死定了&quot;, {button: &quot;确认&quot;});
    }
登入後複製

Toastr通知

toastr[&quot;success&quot;](&quot;你已经成功被绿!&quot;)
登入後複製

jQueryLazyload懒加载

示例:

&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta charset=&quot;UTF-8&quot;&gt;
  &lt;meta http-equiv=&quot;x-ua-compatible&quot; content=&quot;IE=edge&quot;&gt;
  &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt;
  &lt;title&gt;懒加载示例&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div&gt;
  &lt;div&gt;&lt;img src=&quot;img/0.jpg&quot; alt=&quot;&quot; data-original=&quot;img/5.jpg&quot; width=&quot;600px&quot; height=&quot;400px&quot;&gt;&lt;/div&gt;
  ...
  &lt;div&gt;&lt;img src=&quot;img/0.jpg&quot; alt=&quot;&quot; data-original=&quot;img/6.jpg&quot; width=&quot;600px&quot; height=&quot;400px&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;script src=&quot;https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;jquery.lazyload.min.js&quot;&gt;&lt;/script&gt;
&lt;script&gt;
  $(&quot;img.lazy&quot;).lazyload({
    effect: &quot;fadeIn&quot;,
    event: &quot;click&quot;
  })
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
登入後複製

以上是Bootstrap框架的詳細講解(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

在JavaScript中替換字符串字符 在JavaScript中替換字符串字符 Mar 11, 2025 am 12:07 AM

在JavaScript中替換字符串字符

jQuery檢查日期是否有效 jQuery檢查日期是否有效 Mar 01, 2025 am 08:51 AM

jQuery檢查日期是否有效

jQuery獲取元素填充/保證金 jQuery獲取元素填充/保證金 Mar 01, 2025 am 08:53 AM

jQuery獲取元素填充/保證金

10個jQuery手風琴選項卡 10個jQuery手風琴選項卡 Mar 01, 2025 am 01:34 AM

10個jQuery手風琴選項卡

10值得檢查jQuery插件 10值得檢查jQuery插件 Mar 01, 2025 am 01:29 AM

10值得檢查jQuery插件

HTTP與節點和HTTP-Console調試 HTTP與節點和HTTP-Console調試 Mar 01, 2025 am 01:37 AM

HTTP與節點和HTTP-Console調試

jQuery添加捲軸到Div jQuery添加捲軸到Div Mar 01, 2025 am 01:30 AM

jQuery添加捲軸到Div

自定義Google搜索API設置教程 自定義Google搜索API設置教程 Mar 04, 2025 am 01:06 AM

自定義Google搜索API設置教程

See all articles