首頁  >  文章  >  web前端  >  談談初學Bootstrap需掌握的知識點

談談初學Bootstrap需掌握的知識點

青灯夜游
青灯夜游轉載
2020-09-16 11:09:202282瀏覽

談談初學Bootstrap需掌握的知識點

教學推薦:bootstrap教學

#Bootstrap

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

1.什麼是Bootstrap

官方介紹:簡潔、直覺、強悍的前端開發框架,讓web開發更迅速、簡單。

2.Bootstrap 下載

Bootstrap3下載位址:http://v3.bootcss.com/getting...

#3.Bootstrap 檔案目錄結構

dist
    -css
        -bootstrap.css
        -bootstrap.css.map
        -bootstrap.min.css(常用)
        -bootstrap-theme.css
        -bootstrap-theme.css.map
        -bootstrap-theme.min.css
    -fonts
        -glyphicons-halflings-regular.eot
        -glyphicons-halflings-regular.svg
        -glyphicons-halflings-regular.ttf
        -glyphicons-halflings-regular.woff
    -js
        -bootstrap.js
        -bootstrap.min.js(常用)
        -npm.js

4.Bootstrap依賴

要想使用Bootstrap ,那麼必須先引入jQuery(jquery.min.js)檔案。

5.使用Bootstrap

壓縮版本適合實際應用,未壓縮版本適合開發偵錯流程

  • 直接引用官網下載下來的檔案。

  • 使用 Bootstrap 中文網提供的免費 CDN 服務。

<!-- 新 Bootstrap 核心 CSS 文件 -->
<link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css">

<!-- 可选的Bootstrap主题文件(一般不用引入) -->
<link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap-theme.min.css">

<!-- jQuery文件。务必在bootstrap.min.js 之前引入 -->
<script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"></script>

<!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
<script src="http://cdn.bootcss.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>

6.Bootstrap 基本範本

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Bootstrap 基本模板</title>

    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn&#39;t work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <h1>你好,世界!</h1>

    <!-- jQuery (necessary for Bootstrap&#39;s JavaScript plugins) -->
    <script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="js/bootstrap.min.js"></script>
  </body>
</html>

Bootstrap 實例精選:http://v3.bootcss.com/getting -started/#examples

全域CSS 樣式

#HTML5 文件類型

Bootstrap 使用到的某些HTML 元素和CSS 屬性需要將頁面設定為HTML5 文件類型。

<!DOCTYPE html>
<html>
  ...
</html>

行動裝置優先

在 bootstrap3 中行動裝置優先考慮的。為了確保適當的繪製和觸控螢幕縮放,需要在之中加上 viewport 元資料標籤。

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

在行動裝置瀏覽器上,可以透過視窗viewport 設定meta屬性為user-scalable=no可以停用其縮放(zooming)功能,這樣後使用者只能捲動螢幕。 (看情況而定)

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scala=1, user-scalable=no">

排版與連結

Bootstrap 排版、連結樣式設定了基本的全域樣式。分別是:

  • body 元素設定background-color: #fff;

  • ##使用

    @font-family-base@font-size-base@line-height-base a變數作為排版的基本參數

  • 為所有連結設定了基本顏色

    @link-color ,並且當連結處於:hover 狀態時才新增底線

這些樣式都能在

scaffolding.less 檔案中找到對應的原始碼。

Normalize.css

為了增強跨瀏覽器表現的一致性,bootstrap使用了

Normalize.css,這是由Nicolas GallagherJonathan Neal 維護的一個CSS 重置樣式庫。

佈局容器

Bootstrap 需要為頁面內容和柵格系統包裝一個

.container 容器。 Bootstrap提供了兩個作此用處的類別。注意,由於 padding等屬性的原因,這兩種容器類別不能互相嵌套。

.container 類別用於固定寬度並支援響應式佈局的容器。

<div class="container">
  ...
</div>

.container-fluid 類別用於 100% 寬度,佔據全部視窗(viewport)的容器。

<div class="container-fluid">
  ...
</div>

柵格系統<strong></strong>

Bootstrap 提供了一套響應式、行動裝置優先的串流媒體系統,隨著螢幕或視窗(viewport)尺寸的增加,系統會自動分成最多12列。它包含了易於使用的

預定義類別,還有強大的mixin 用於生成更具語義的佈局

簡介

柵格系統用於透過一系列的行(row)與列(column)的組合來創建頁面佈局,你的內容就可以放入這些創建好的佈局中。以下就介紹一下Bootstrap 柵格系統的工作原理:<p></p>
  • 「行(row)」必須包含在

    .container (固定寬度)或. container-fluid (100% 寬度)中,以便為其賦予適當的排列(aligment)和內補(padding)。

  • 透過「行(row)」在水平方向建立一組「列(column)」。 <p></p>
  • 你的內容應當放置於「列(column)」內,並且,只有「列(column)」可以作為行(row)」的直接子元素。

  • 類似

    .row.col-xs-4 這種預先定義的類,可以用來快速建立柵格佈局。Bootstrap 原始碼中定義的mixin 也可以用來建立語意化的佈局。

  • 通过为“列(column)”设置 padding 属性,从而创建列与列之间的间隔(gutter)。通过为 .row 元素设置负值margin 从而抵消掉为 .container 元素设置的 padding,也就间接为“行(row)”所包含的“列(column)”抵消掉了padding

  • The negative margin is why the examples below are outdented. It's so that content within grid columns is lined up with non-grid content.

  • Grid columns are created by specifying the number of twelve available columns you wish to span. For example, three equal columns would use three .col-xs-4.

  • 如果一“行(row)”中包含了的“列(column)”大于 12,多余的“列(column)”所在的元素将被作为一个整体另起一行排列。

  • Grid classes apply to devices with screen widths greater than or equal to the breakpoint sizes, and override grid classes targeted at smaller devices. Therefore, applying any .col-md- class to an element will not only affect its styling on medium devices but also on large devices if a .col-lg- class is not present.

通过研究后面的实例,可以将这些原理应用到你的代码中。

媒体查询

在栅格系统中,我们在 Less 文件中使用以下媒体查询(media query)来创建关键的分界点阈值。

/* 超小屏幕(手机,小于 768px) */
/* 没有任何媒体查询相关的代码,因为这在 Bootstrap 中是默认的(还记得 Bootstrap 是移动设备优先的吗?) */

/* 小屏幕(平板,大于等于 768px) */
@media (min-width: @screen-sm-min) { ... }

/* 中等屏幕(桌面显示器,大于等于 992px) */
@media (min-width: @screen-md-min) { ... }

/* 大屏幕(大桌面显示器,大于等于 1200px) */
@media (min-width: @screen-lg-min) { ... }

偶尔也会在媒体查询代码中包含 max-width 从而将 CSS 的影响限制在更小范围的屏幕大小之内

@media (max-width: @screen-xs-max) { ... }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... }
@media (min-width: @screen-lg-min) { ... }

栅格参数

通过下表可以详细查看 Bootstrap 的栅格系统是如何在多种屏幕设备上工作的。


超小屏幕 手机 ( 小屏幕 平板 (≥768px) 中等屏幕 桌面显示器 (≥992px) 大屏幕 大桌面显示器 (≥1200px)
栅格系统行为 总是水平排列 开始是堆叠在一起的,当大于这些阈值时将变为水平排列C 同左 同左
.container 最大宽度 None (自动) 750px 970px 1170px
类前缀 .col-xs- .col-sm- .col-md- .col-lg-
列(column)数 12 12 12 12
最大列(column)宽 自动 ~62px ~81px ~97px
槽(gutter)宽 30px (每列左右均有 15px) 同左 同左 同左
可嵌套
偏移(Offsets)
列排序

实例:从堆叠到水平排列

使用单一的一组 .col-md-* 栅格类,就可以创建一个基本的栅格系统,在手机和平板设备上一开始是堆叠在一起的(超小屏幕到小屏幕这一范围),在桌面(中等)屏幕设备上变为水平排列。所有“列(column)必须放在 ” .row 内。

談談初學Bootstrap需掌握的知識點

<div class="row">
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
  <div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
  <div class="col-md-8">.col-md-8</div>
  <div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
  <div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
  <div class="col-md-6">.col-md-6</div>
  <div class="col-md-6">.col-md-6</div>
</div>

实例:移动设备和桌面屏幕

是否不希望在小屏幕设备上所有列都堆叠在一起?那就使用针对超小屏幕和中等屏幕设备所定义的类吧,即 .col-xs-*.col-md-*。请看下面的实例,研究一下这些是如何工作的。

談談初學Bootstrap需掌握的知識點

<!-- Stack the columns on mobile by making one full-width and the other half-width -->
<div class="row">
  <div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop -->
<div class="row">
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
  <div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div>
</div>

<!-- Columns are always 50% wide, on mobile and desktop -->
<div class="row">
  <div class="col-xs-6">.col-xs-6</div>
  <div class="col-xs-6">.col-xs-6</div>
</div>

排版

标题

HTML 中的所有标题标签, 均可使用。另外,还提供了 .h1.h6 类,为的是给内联(inline)属性的文本赋予标题的样式

談談初學Bootstrap需掌握的知識點

<h1>h1. Bootstrap heading</h1>
<h2>h2. Bootstrap heading</h2>
<h3>h3. Bootstrap heading</h3>
<h4>h4. Bootstrap heading</h4>
<h5>h5. Bootstrap heading</h5>
<h6>h6. Bootstrap heading</h6>

在标题内还可以包含 <small></small> 标签或赋予 .small 类的元素,可以用来标记副标题。

<h1>h1. Bootstrap heading <small>Secondary text</small></h1>
<h2>h2. Bootstrap heading <small>Secondary text</small></h2>
<h3>h3. Bootstrap heading <small>Secondary text</small></h3>
<h4>h4. Bootstrap heading <small>Secondary text</small></h4>
<h5>h5. Bootstrap heading <small>Secondary text</small></h5>
<h6>h6. Bootstrap heading <small>Secondary text</small></h6>

页面主体

Bootstrap 将全局 font-size 设置为 14pxline-height 设置为 1.428。这些属性直接赋予 元素和所有段落元素。另外, (段落)元素还被设置了等于 1/2 行高(即 10px)的底部外边距(margin)。

中心内容

通过添加 .lead 类可以让段落突出显示。

<p class="lead">...</p>

使用 Less 工具构建

variables.less 文件中定义的两个 Less 变量决定了排版尺寸:@font-size-base@line-height-base。第一个变量定义了全局 font-size 基准,第二个变量是 line-height 基准。我们使用这些变量和一些简单的公式计算出其它所有页面元素的 margin、 padding 和 line-height。自定义这些变量即可改变 Bootstrap 的默认样式

内联文本元素

标记文本

为了高亮文本,可以使用 <mark></mark> 标签

You can use the mark tag to <mark>highlight</mark> text.

被删除的文本

对于被删除的文本,可以使用 <del></del> 标签。

談談初學Bootstrap需掌握的知識點

<del>This line of text is meant to be treated as deleted text.</del>

无用文本

对于无用文本可以使用 <s></s> 标签。

談談初學Bootstrap需掌握的知識點

<s>This line of text is meant to be treated as no longer accurate.</s>

插入文本

而外插入文本使用 <ins></ins> 标签

談談初學Bootstrap需掌握的知識點

<ins>This line of text is meant to be treated as an addition to the document.</ins>

带下划线的文本

为文本添加下划线,使用 <u></u> 标签。

談談初學Bootstrap需掌握的知識點

<u>This line of text will render as underlined</u>

小号文本

使用标签 <small></small>

着重强调

使用标签 <strong></strong> 标签

斜体

使用 <em></em> 标签

文本对齐

談談初學Bootstrap需掌握的知識點

<p class="text-left">Left aligned text.</p>
<p class="text-center">Center aligned text.</p>
<p class="text-right">Right aligned text.</p>
<p class="text-justify">Justified text.</p>
<p class="text-nowrap">No wrap text.</p>

改变大小写

談談初學Bootstrap需掌握的知識點

<p class="text-lowercase">Lowercased text.</p>
<p class="text-uppercase">Uppercased text.</p>
<p class="text-capitalize">Capitalized text.</p>

引用

在你的文档中引用其他的来源,可以使用 <blockquote></blockquote> 来表示引用样式。对于直接引用,建议使用 <p></p> 标签。

<blockquote>
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.</p>
</blockquote>

列表

无序列表

排列顺序无关紧要的一列元素。

<ul>
  <li>...</li>
</ul>
有序列表

顺序至关重要的一组元素

<ol>
  <li>...</li>
</ol>

代码

内联代码

For example, <code><section></code> should be wrapped as inline.

用户输入

通过 kbd 标签标记用户通过键盘输入的内容。

談談初學Bootstrap需掌握的知識點

To switch directories, type <kbd>cd</kbd> followed by the name of the directory.<br>
To edit settings, press <kbd><kbd>ctrl</kbd> + <kbd>,</kbd></kbd>

代码块

多行代码可以使用 <pre class="brush:php;toolbar:false"></pre> 标签。为了正确的展示代码,注意将尖括号做转义处理。

变量

通过 <var></var> 标签标记变量

程式輸出

透過 <samp></samp> 標籤來標記程式輸出的內容

期待後面的文章!

更多程式相關知識,請造訪:程式設計入門! !

以上是談談初學Bootstrap需掌握的知識點的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除