@(目錄)html
讓咱們的 Web 開發更簡單,更快捷;前端
減輕維護成本(統一了代碼風格)
目錄結構
|——css // 本身定義的css文件
|——js // 本身寫的js文件
|——font // 本身製做的字體文件
|——img // 項目中用到的圖片目錄
|——lib // 引入的第三方代碼
index.html // 入口文件html5
css
除了公共級別樣式,其他樣式所有加上做用域。避免出現樣式衝突的問題。
儘可能使用 直接子代選擇器, 少用間接子代 避免錯殺。
咱們約定全部的分割線使用下邊框的方式實現。jquery
<!DOCTYPE html> <!-- 指定了咱們的頁面語言 --> <html lang="zh-CN"> <head> <!-- 界面的字符編碼 --> <meta charset="utf-8"> <!-- 指定了IE的編譯版本,edge用最新的ie解釋器 --> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <!-- 在移動端開發中,當界面寬度大於設備容器,會生成一個虛擬的容器,這個容器就是視口 --> <meta name="viewport" content="width=device-width, initial-scale=1,user-scalable=no"> <!-- 上述3個meta標籤*必須*放在最前面,任何其餘內容都*必須*跟隨其後! --> <title>demo</title> <!--圖標--> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> <!-- Bootstrap --> <link href="lib/bootstrap/css/bootstrap.css" rel="stylesheet"> <!-- HTML5 shim 和 Respond.js 是爲了讓 IE8 支持 HTML5 元素和媒體查詢(media queries)功能 --> <!-- 警告:經過 file:// 協議(就是直接將 html 頁面拖拽到瀏覽器中)訪問頁面時 Respond.js 不起做用 --> <!-- 條件註釋 --> <!--[if lt IE 9]> <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script> <![endif]--> </head> <body> <h1>你好,世界!</h1> <!-- jQuery (Bootstrap 的全部 JavaScript 插件都依賴 jQuery,因此必須放在前邊) --> <script src="lib/jquery/jquery.js"></script> <!-- 加載 Bootstrap 的全部 JavaScript 插件。你也能夠根據須要只加載單個插件。 --> <script src="lib/bootstrap/js/bootstrap.js"></script> </body> </html>
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
Bootstrap 提供了一套響應式、移動設備優先的流式柵格系統,隨着屏幕或視口(viewport)尺寸的增長,系統會自動分爲最多12列。css3
柵格系統的使用,不只可讓網頁的信息呈現更加美觀易讀,更具可用性。並且,對於前端開發來講,網頁將更加的靈活與規範。npm
柵格系統用於經過一系列的行(row)與列(column)的組合來建立頁面佈局,你的內容就能夠放入這些建立好的佈局中。注意row須要放在一個版心中。bootstrap
經過浮動實現的。row會進行浮動的清除。瀏覽器
缺點:
缺少複用性服務器
[class*=" icon-"]選擇 class 屬性值包含 " icon-" 的元素
data-
使用 data-* 屬性來嵌入自定義數據:
data-如何取值?
不足
自已創做圖標字體費時費力,後期維護成本偏高。
圖表字體只能被渲染爲單色的,或者CSS3的漸變色。
簡單理解:所謂的雪碧圖是一種CSS圖像合併技術,該方法是將小圖標和背景圖像合併到一張圖片上,而後利用css的背景定位來顯示須要顯示的圖片部分;簡單說就是在一整張圖片中分割出本身想要的部分,也可理解爲圖片截取顯示(座標的移動)
不足
維護麻煩,若是修改其中的一張圖,你須要修改整張圖。
高清失真,爲了適應不一樣的分辨率,可能要準備多個規格的圖片。
滾動條
子元素寬度/高度超過父元素寬度/高度,而且父元素設置overflow:scroll的時候出現滾動條。
注意檢查咱們的條件。
爲何這麼設計?
對通用的樣式進行封裝,同時對不一樣的主題增長一些拓展的樣式。可讓咱們的樣式設計更加靈活,減小咱們的維護成本。設計的時候注意下降耦合度,保證咱們樣式的獨立性
css計算寬度的方法
使用calc()函數,注意兩個參數與符號之間存在空格
觸摸開始事件
觸摸移動事件
觸摸結束事件
vw、vh、vmin、vmax 的含義
vw、vh、vmin、vmax 是一種視窗單位,也是相對單位。它相對的不是父節點或者頁面的根節點。而是由視窗(Viewport)大小來決定的,單位 1,表明相似於 1%。
視窗(Viewport)是你的瀏覽器實際顯示內容的區域—,換句話說是你的不包括工具欄和按鈕的網頁瀏覽器。
vw、vh 與 % 百分比的區別
% 是相對於父元素的大小設定的比率,vw、vh 是視窗大小決定的。
vw、vh 優點在於可以直接獲取高度,而用 % 在沒有設置 body 高度的狀況下,是沒法正確得到可視區域的高度的,因此這是挺不錯的優點。
作移動頁面開發時,若是使用 vw、wh 設置字體大小(好比 5vw),在豎屏和橫屏狀態下顯示的字體大小是不同的。
因爲 vmin 和 vmax 是當前較小的 vw 和 vh 和當前較大的 vw 和 vh。這裏就能夠用到 vmin 和 vmax。使得文字大小在橫豎屏下保持一致。
移動設備 Android:自 4.4 版起就完美支持(2013年12月) iOS:自 iOS8 版起就完美支持(2014年9月*)