DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> Bootstrap使用基礎教程詳解
Bootstrap使用基礎教程詳解
編輯:關於JavaScript     

一:Bootstrap簡介

  Boostrap是一個非常受歡迎的前端開發框架,該框架極大的提高前端團隊的開發效率。 Bootstrap對常見的CSS布局組件和JavaScript插件進行了完整的封裝,使開發人員可以輕松使用。 使用Bootstrap可以快速制作精美的響應式頁面,並且兼容移動端。

二:Bootstrap特性

  提供一套完整的CSS插件 豐富的預定義樣式表 一組基於jQuery的JS插件表 靈活的響應式刪格系統 移動先行 基於Less和Sass開發。

三:使用Bootstrap

 1. 第一步:

  到http://www.bootcss.com/下載最新的bootstrap。 解壓後有三個文件夾,分別放置css,js和字體。 CSS和JavaScript文件分別有一個壓縮版,可以根據需要選擇一個版本。開發時使用未壓縮版,在發布時使用壓縮版本。

 2.固定模板代碼展示

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<!-- IE=edge告訴IE使用最新的引擎渲染網頁,chrome=1則可以激活Chrome Frame -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3個meta標簽*必須*放在最前面,任何其他內容都*必須*跟隨其後! -->
<title>Bootstrap模板樣式</title>

<!-- 引入Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- 引入HTML5框架和respond.js支持IE8和IE9 ,IE 8 需要 Respond.js 配合才能實現對媒體查詢的支持。 Respond.js 不能再路徑 file:// 下運行-->
<!-- [if lt IE 9]表示在IE9以下的浏覽器生效-->
<!--[if lt IE 9]> 
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
<![endif]--> 
</head>
<body>
<h1>你好,世界!</h1>
<!--在底部引用jquery插件用於實現bootstrap動態效果 -->
<script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<!-- 引入bootsrtap腳本 -->
<script src="js/bootstrap.min.js"></script>
</body>
</html>

3.基本用法:

  3.1整體框架-12柵格系統

  bootstrap的核心是12柵格系統。 12柵格系統就是把網頁的內容區域按照寬度平分為12份,網頁開發人員可以自由按份組合,方便網頁的布局,使排版看起來整齊規范。

  bootstarp提供了一個名為container的樣式容器 .container是一個自動居中,高度自適應的樣式。用.container作為網頁內容最外層的div樣式,可以輕松的實現12柵格的網頁布局。 並且,這種12柵格系統是根據屏幕大小自適應的,.container會自動根據屏幕大小調整總寬度和柵格的平均寬度。

  col-lg-n 最大列寬95px 在>=1200px像素的情況下將.container12等分 每份寬度95px 其余情況寬度為100%

  col-md-n 最大寬度78px; 在>=992px像素的情況下將.container12等分 其余情況100%

  col-sm-n 最大列寬60px 在>=768px像素的情況下將.container12等分 其余情況100%

  col-xs-n 列寬根據視口大小12等分 在任何尺寸的屏幕下都將.container 12等分

  3.2基礎樣式

    (1)Bootstrap的h1-h6樣式取消了加粗,重新定義了上下外邊距 h1-h3 margin-top:20px; margin-bottom-10px; H3-h6 margin-top:10px; margin-bottom-10px;

    (2)定義了4個對齊方式的樣式,分別是.text-left, .text-center, .text-right,.text-justify .text-justify 英文字母的兩端對齊

    (3)Bootstrap提供了五種默認的顏色樣式,-primary 重點藍, -success成功綠,-info信息藍 -warning 警告橙,-danger危險紅

  3.3btn組件+btn-group  

<button type=”button” class=”btn btn-primary”>重點按鈕</button> alert組件 <div class=”alert” class=”alert alert-danger”>危險警告</div>

    一般的組件都有四種尺寸,超小xs, 小型sm, 普通, 大型lg 使用方法是 組件名-尺寸 <button type=”button” class=”btn btn-lg”>超大按鈕</button> 同一組件不同類型的按鈕可以結合使用 

<button type=”button” class=”btn btn-primary btn-lg”>超大重點按鈕</button>
<!--btn-group-->
<div class="btn-group">
<button class="btn btn-default">首頁</button>
<button class="btn btn-default">第二頁</button>
<button class="btn btn-default">第三頁</button>
<button class="btn btn-default">末頁</button>
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">產品列表
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li class="dropdown-header">聯想</li>
<li>華碩</li>
<li>蘋果</li>
</ul>
</div>
</div>

 3.4table表格樣式:

    給table元素添加一個div父元素,給這個div添加class=”table-responsive” 創建相應式表格,當視口像素小於768px時候,會出現水平滾動條

<!--table ,table-striped列表之間有間隔色,table-responsive表格自適應-->
<div class="table-responsive">
<table class="table table-striped">
<tr>
<td>1</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td>2</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>3</td>
<td>3</td>
</tr>
</table>
</div>

  3.5Badge徽章

<!--Badges徽章-->
<br/>
<a href="#" >
特別關心<span class="badge">42</span>
</a>
<br/>

  3.6導航條

(1)膠囊式導航條

<ul class="nav nav-pills" >
<li class="active"><a href="#">動態 <span class="badge">42</span></a></li>
<li><a href="#">Profile</a></li>
<li><a href="#">私信<span class="badge">3</span></a></li>
</ul> 

(2)標簽式導航條

<!--標簽式導航菜單-->
<ul class="nav nav-tabs">
<li class="active"><a href="#news1" data-toggle="tab">公司新聞</a></li>
<li><a href="#news2" data-toggle="tab" >行業新聞</a></li>
<li><a href="#news3" data-toggle="tab">通知公告</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane fade " id="news1">
<ul>
<li>公司新聞</li>
<li>公司新聞</li>
<li>公司新聞</li>
</ul>
</div>
<div class="tab-pane fade " id="news2">
<ul>
<li>行業新聞</li>
<li>行業新聞</li>
<li>行業新聞</li>
</ul>
</div>
<div class="tab-pane fade " id="news3">
<ul>
<li>通知公告</li>
<li>通知公告</li>
<li>通知公告</li>
</ul>
</div>
</div>

  3.7 input-group

<!--input+button組合-->
<div class="input-group">
<input type="text" class="form-control">
<span class="input-group-btn">
<button class="btn">搜索</button>
</span>
</div>

  3.8輪播

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap模板樣式</title>
<link href="../css/bootstrap.min.css" rel="stylesheet">
<style>
body{background: #eee}
.item{position: relative; height: 400px}
.item img{ position: relative; width: 100%; height: 400px}
.item p{position: absolute; top:40%; width: 100%; color: #fff; }
.item h1{position: absolute; top:20%; width: 100%; color: #fff; text-align: center}
@media (max-width: 768px) {
.slide{ width: 100%}
}
</style>
<!--[if lt IE 9]>
<script src="../js/html5shiv.min.js"></script>
<script src="../js/respond.min.js"></script>
<![endif]-->
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div id="myCarousel" class="carousel slide" data-ride="carousel" style="width: 100%; " >
<!--幻燈片導航-->
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li class="" data-target="#myCarousel" data-slide-to="1"></li>
<li class="" data-target="#myCarousel" data-slide-to="2"></li>
</ol>
<div class="carousel-inner" style="height: 400px">
<!--第一張幻燈片-->
<div class="item active" style="height: 400px" >
<img data-holder-rendered="true" src="../images/圖標1.png" >
<h1>標題內容</h1>
<p>段落內容</p>
<!--幻燈片標題-->
<div class="carousel-caption">標題 1</div>
</div>
<!--第二張幻燈片-->
<div class="item" >
<img data-holder-rendered="true" src="../images/圖標2.png">
<div class="carousel-caption">標題 2</div>
</div>
<!--第三張幻燈片-->
<div class="item">
<img data-holder-rendered="true" src="../images/圖標3.png">
<div class="carousel-caption">標題 3</div>
</div>
</div>
<!--左右導航-->
<a class="left carousel-control" href="#myCarousel" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#myCarousel" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
<script>
$(function(){
$('#myCarousel').on('slide.bs.carousel', function () {
// alert("回調函數");
});
});
</script>
</body>
</html>

  3.9面板panel-group

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Bootstrap 實例 - 標簽頁(Tab)插件</title>
<link rel="stylesheet" href="../css/bootstrap.min.css">
<script src="../js/jquery.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
</head>
<body>
<div class="col-md-6 panel-group" id="panel-group">
<!--面板內容關閉-->
<div class="panel panel-info">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#panel-group" href="#collapseOne">
面板標題
</a>
</h4>
</div>
<div id="collapseOne" class="panel-collapse collapse">
<div class="panel-body">
面板內容
</div>
</div>
</div>
<!--面板內容打開-->
<div class="panel panel-info">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#panel-group" href="#collapseTwo">
面板標題
</a>
</h4>
</div>
<div id="collapseTwo" class="panel-collapse collapse in">
<div class="panel-body">
面板內容
</div>
</div>
</div>
</div>
</body>

  3.10媒體查詢

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>媒體查詢</title>
<style>
div {
width: 100%;
height: 200px;
background-color: red;
}
/*當適口最大寬度為980px,也就是適口<=980px 內部的樣式生效*/
@media (max-width: 320px) {
div {
font-size: 10px;
background: yellow;
}
}
</style>
</head>
<body>
<div>媒體查詢</div>
</body>
<script>
window.onresize = function (){
var mydiv = document.getElementsByTagName("div")[0];
mydiv.innerHTML = document.documentElement.clientWidth;
}
</script>
</html>

四:注意事項

1.container,col - - (柵格),需要用單獨的div包裹,之後再裡面定義其他的內容。

2.如果要對元素設置媒體查詢不能定義的class或id不能和定義col - - (柵格)的class 或id寫到一個div裡,

medio為定義媒體查詢的class錯誤的寫法 <div class="medio col-md-6" >aa</div>

正確的寫法是

<div class="col-md-6"> <div class="medio " >aa</div> </div>

3.如果用container實現高度自適應時,就不能給元素添加高度,應對其父元素設置overflow-hidden。

4.當給元素設置Position定位之後,元素的寬度為0,如果想讓元素居中需要對其添加width:100%;text-align:center;

5.再使用input標簽時,如果對其父類定義了col - - (柵格),可以對input添加form-control設置input的大小和父類一樣大。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved