筆試12:Bootstrap知識

BootStrap

Bootstrap,來自 Twitter,是目前最受歡迎的前端框架。Bootstrap 是基於 HTML、CSS、JAVASCRIPT 的,它簡潔靈活,使得 Web 開發更加快捷。css

1 Bootstrap 基本結構

Bootstrap 是一個用於快速開發 Web 應用程序和網站的前端框架。Bootstrap 是基於 HTML、CSS、JAVASCRIPT 的。html

(1)建立html框架:在pycharm中輸入!,以後tab便可前端

1559629180353

(2)Bootstrap 安裝。您能夠從 http://getbootstrap.com/ 上下載 Bootstrap 的最新版本。包含了 jquery.jsbootstrap.min.jsbootstrap.min.css 文件,用於讓一個常規的 HTML 文件變爲使用了 Bootstrap 的模板。國內推薦使用 Staticfile CDN 上的庫:jquery

<!-- 新 Bootstrap 核心 CSS 文件 -->
<link href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">

<!-- jQuery文件。務必在bootstrap.min.js 以前引入 -->
<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>

<!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
<script src="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>

2 Bootstrap CSS

Bootstrap 3 默認的 CSS 自己就對移動設備友好支持。Bootstrap 3 的設計目標是移動設備優先,而後纔是桌面設備。這其實是一個很是及時的轉變,由於如今愈來愈多的用戶使用移動設備。爲了讓 Bootstrap 開發的網站對移動設備友好,確保適當的繪製和觸屏縮放,須要在網頁的 head 之中添加 viewport meta 標籤,以下所示:ios

<meta name="viewport" content="width=device-width, initial-scale=1.0">

width 屬性控制設備的寬度。假設您的網站將被帶有不一樣屏幕分辨率的設備瀏覽,那麼將它設置爲 device-width 能夠確保它能正確呈如今不一樣設備上。面試

initial-scale=1.0 確保網頁加載時,以 1:1 的比例呈現,不會有任何的縮放。bootstrap

  • 響應式圖像
<img src="..." class="img-responsive" alt="響應式圖像">

img-responsive class 爲圖像賦予了 max-width: 100%; 和 height: auto; 屬性,可讓圖像按比例縮放,不超過其父元素的尺寸。瀏覽器

.img-responsive {
  display: block;
  height: auto;
  max-width: 100%;
}

這代表相關的圖像呈現爲 block。當您把元素的 display 屬性設置爲 block,以塊級元素顯示。設置 height:auto,相關元素的高度取決於瀏覽器。前端框架

設置 max-width 爲 100% 會重寫任何經過 width 屬性指定的寬度。這讓圖片對響應式佈局的支持更友好。網絡

若是須要讓使用了 .img-responsive 類的圖片水平居中,請使用 .center-block 類,不要用 .text-center。

body {margin: 0;} 來移除 body 的邊距。請看下面有關 body 的設置:

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.428571429;
  color: #333333;
  background-color: #ffffff;
}

第一條規則設置 body 的默認字體樣式爲 "Helvetica Neue", Helvetica, Arial, sans-serif。最後一條規則設置默認的背景顏色爲白色。

1559631518306

2.1 網格系統

Bootstrap 提供了一套響應式、移動設備優先的流式網格系統,隨着屏幕或視口(viewport)尺寸的增長,系統會自動分爲最多12列。其實就是頁面佈局。

  • bootstrap網格系統(Grid System):Bootstrap 包含了一個響應式的、移動設備優先的、不固定的網格系統,能夠隨着設備或視口大小的增長而適當地擴展到 12 列。它包含了用於簡單的佈局選項的預約義類,也包含了用於生成更多語義佈局的功能強大的混合類。

1559631684369

  • 網格系統工做原理
    • 行必須放置在 .container class 內,以便得到適當的對齊(alignment)和內邊距(padding)。
    • 使用行來建立列的水平組。
    • 內容應該放置在列內,且惟有列能夠是行的直接子元素。
    • 預約義的網格類,好比 .row.col-xs-4,可用於快速建立網格佈局。LESS 混合類可用於更多語義佈局。
    • 列經過內邊距(padding)來建立列內容之間的間隙。該內邊距是經過 .rows 上的外邊距(margin)取負,表示第一列和最後一列的行偏移。
    • 網格系統是經過指定您想要橫跨的十二個可用的列來建立的。例如,要建立三個相等的列,則使用三個 .col-xs-4

1559631858112

  • 堆疊水平
<div class="container">
    <h1>Hello, world!</h1>
 
    <div class="row">
        <div class="col-md-6"  style="background-color: #dedef8; box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
            <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
            eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
            enim ad minim veniam, quis nostrud exercitation ullamco laboris 
            nisi ut aliquip ex ea commodo consequat. 
            </p>
 
            <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem 
            accusantium doloremque laudantium, totam rem aperiam, eaque ipsa 
            quae ab illo inventore veritatis et quasi architecto beatae vitae 
            dicta sunt explicabo. 
            </p>
        </div>
 
        <div class="col-md-6" style="background-color: #dedef8;box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
            <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem 
            accusantium doloremque laudantium.
            </p>
 
            <p> Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, 
            consectetur, adipisci velit, sed quia non numquam eius modi 
            tempora incidunt ut labore et dolore magnam aliquam quaerat 
            voluptatem. 
            </p>
        </div>
    </div>
</div>
  • ...
    元素被添加,確保居中和最大寬度。
  • 一旦添加了容器,接下來您須要考慮以行爲單位。添加
    ...
    ,並在行內添加列
  • 網格中的每一行是由 12 個單元組成的,您可使用這些單元定義列的尺寸。在咱們的實例中,有兩個列,每一個列由 6 個單元組成,即 6+6=12。

2.2 手機平板電腦通用尺寸

https://www.runoob.com/bootstrap/bootstrap-grid-system-example3.html

2.3 排版

<small>本行內容是在標籤內</small><br>
<strong>本行內容是在標籤內</strong><br>
<em>本行內容是在標籤內,並呈現爲斜體</em><br>
<p class="text-left">向左對齊文本</p>
<p class="text-center">居中對齊文本</p>
<p class="text-right">向右對齊文本</p>
<p class="text-muted">本行內容是減弱的</p>
<p class="text-primary">本行內容帶有一個 primary class</p>
<p class="text-success">本行內容帶有一個 success class</p>
<p class="text-info">本行內容帶有一個 info class</p>
<p class="text-warning">本行內容帶有一個 warning class</p>
<p class="text-danger">本行內容帶有一個 danger class</p>
  • 縮寫

    1559633281715

  • 地址

<address>
  <strong>Some Company, Inc.</strong><br>
  007 street<br>
  Some City, State XXXXX<br>
  <abbr title="Phone">P:</abbr> (123) 456-7890
</address>
<address>
  <strong>Full Name</strong><br>
  <a href="mailto:#">mailto@somedomain.com</a>
</address>
  • 引用
<blockquote>
  <p>
  這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。這是一個默認的引用實例。
  </p>
</blockquote>
<blockquote>
  這是一個帶有源標題的引用。
  <small>Someone famous in <cite title="Source Title">Source Title</cite></small>
</blockquote>
<blockquote class="pull-right">
  這是一個向右對齊的引用。
  <small>Someone famous in <cite title="Source Title">Source Title</cite></small>
</blockquote>
  • 列表
<h4>有序列表</h4>
<ol>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
</ol>
<h4>無序列表</h4>
<ul>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
</ul>
<h4>未定義樣式列表</h4>
<ul class="list-unstyled">
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
</ul>
<h4>內聯列表</h4>
<ul class="list-inline">
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
</ul>
<h4>定義列表</h4>
<dl>
  <dt>Description 1</dt>
  <dd>Item 1</dd>
  <dt>Description 2</dt>
  <dd>Item 2</dd>
</dl>
<h4>水平的定義列表</h4>
<dl class="dl-horizontal">
  <dt>Description 1</dt>
  <dd>Item 1</dd>
  <dt>Description 2</dt>
  <dd>Item 2</dd>
</dl>
  • 其餘排版

1559633633126

2.4 代碼

Bootstrap 容許您以兩種方式顯示代碼:開始和結束標籤使用了 unicode 變體: <>

  • 第一種是 標籤。若是您想要內聯顯示代碼,那麼您應該使用 標籤。
  • 第二種是
     標籤。若是代碼須要被顯示爲一個獨立的塊元素或者代碼有多行,那麼您應該使用 
     標籤。

1559633788857

1559633902621

2.5 表格

Bootstrap 提供了一個清晰的建立表格的佈局。下表列出了 Bootstrap 支持的一些表格元素:

1559633980733

  • 表格類,經過把任意的 .table 包在 .table-responsive class 內,您可讓表格水平滾動以適應小型設備(小於 768px)。當在大於 768px 寬的大型設備上查看時,您將看不到任何的差異。

1559635247252

  • , 和 類

1559635279915

基本表格

<table class="table">
  <caption>基本的表格佈局</caption>
  <thead>
    <tr>
      <th>名稱</th>
      <th>城市</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Tanmay</td>
      <td>Bangalore</td>
    </tr>
    <tr>
      <td>Sachin</td>
      <td>Mumbai</td>
    </tr>
  </tbody>
</table>

2.6 表單

Bootstrap 提供了下列類型的表單佈局:垂直表單(默認),內聯表單,水平表單。建立基本表單的步驟:

  • 向父
    元素添加 role="form"
  • 把標籤和控件放在一個帶有 class .form-group
    中。這是獲取最佳間距所必需的。
  • 向全部的文本元素 展現列表選項,一般是那些用戶很熟悉的選擇列表,好比州或者數字。
  • 使用 multiple="multiple" 容許用戶選擇多個選項。
<form role="form">
  <div class="form-group">
    <label for="name">選擇列表</label>
    <select class="form-control">
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
    </select>
    <label for="name">可多選的選擇列表</label>
    <select multiple class="form-control">
      <option>1</option>
      <option>2</option>
      <option>3</option>
      <option>4</option>
      <option>5</option>
    </select>
  </div>
</form>

选择框

  • 靜態控件,在一個水平表單內的表單標籤後放置純文本時,請在

    上使用 class .form-control-static

<form class="form-horizontal" role="form">
  <div class="form-group">
    <label class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
      <p class="form-control-static">email@example.com</p>
    </div>
  </div>
  <div class="form-group">
    <label for="inputPassword" class="col-sm-2 control-label">密碼</label>
    <div class="col-sm-10">
      <input type="password" class="form-control" id="inputPassword" placeholder="請輸入密碼">
    </div>
  </div>
</form>

静态控ä"¶

2.7 按鈕

如下樣式可用於,

相關文章
相關標籤/搜索