HTML5+CSS3從入門到精通
前言Preface
1 Web開發新時代
1.1 HTML5概述
1.1.1 HTML5新特性
1.1.2 HTML5組織
1.1.3 HTML5構成
1.2 HTML5設計原理
1.2.1 HTML開發歷程
1.2.2 HTML5開發動力
1.2.3 HTML5設計理念
1.3 編寫第一個HTML5頁面
1.3.1 搭建上機練習環境
1.3.2 檢測瀏覽器是否支持
1.3.3 使用HTML5編寫簡單的Web頁面
1.4 HTML5頁面的特征
1.4.1 使用HTML5結構化元素
1.4.2 使用CSS美化HTML5文檔
2 從HTML、XHTML到HTML5
2.1 HTML基礎
2.1.1 HTML簡介
2.1.2 HTML特性
2.1.3 HTML結構
2.1.4 HTML語法
2.1.5 HTML標簽
2.1.6 HTML屬性
2.2 XHTML基礎
2.2.1 XHTML結構
2.2.2 XHTML語法
2.2.3 XHTML類型
2.2.4 DTD解析
2.2.5 命名空間
2.3 HTML5基礎
2.3.1 HTML5語法
2.3.2 HTML5元素
2.3.3 HTML5增加及廢除的屬性
2.3.4 HTML5全局屬性
2.3.5 HTML5其他功能
3 創建HTML5文檔
3.1 認識HTML5文檔結構
3.2 HTML5元素分類
3.3 構建主體內容
3.3.1 標識文章
3.3.2 給內容分段
3.3.3 設計導航信息
3.3.4 設計輔助信息
3.3.5 設計微格式
3.3.6 添加發布日期
3.4 添加語義模塊
3.4.1 添加標題塊
3.4.2 給標題分組
3.4.3 添加腳注塊
3.4.4 添加聯系信息
3.5 綜合實戰:使用HTML5設計博客主頁
3.5.1 設計大綱
3.5.2 設計樣式
4 實戰HTML5表單
4.1 新增的input輸入類型
4.1.1 email類型的應用
4.1.2 url類型的應用
4.1.3 number類型的應用
4.1.4 range類型的應用
4.1.5 日期檢出器類型的應用
4.1.6 search類型的應用
4.1.7 tel類型的應用
4.1.8 color類型的應用
4.2 新增的input屬性
4.2.1 新增的autocomplete屬性
4.2.2 新增的autofocus屬性
4.2.3 新增的form屬性
4.2.4 新增的表單重寫屬性
4.2.5 新增的height與width屬性
4.2.6 新增的list屬性
4.2.7 新增的min、max和step屬性
4.2.8 新增的multiple屬性
4.2.9 新增的pattern屬性
4.2.10 新增的placeholder屬性
4.2.11 新增的required屬性
4.3 新增的form元素
4.3.1 新增的datalist元素
4.3.2 新增的keygen元素
4.3.3 新增的output元素
4.4 新增的form屬性
4.4.1 新增的autocomplete屬性
4.4.2 新增的novalidate屬性
5 實戰HTML5畫布
5.1 認識HTML5 canvas元素
5.1.1 在頁面中添加canvas元素
5.1.2 Canvas如何繪制圖形
5.1.3 認識Canvas坐標
5.1.4 何時不用Canvas
5.1.5 如果瀏覽器不支持Canvas
5.1.6 檢測瀏覽器支持
5.2 繪制簡單圖形
5.2.1 繪制直線
5.2.2 繪制矩形
5.2.3 繪制圓形
5.2.4 繪制三角形
5.2.5 清空畫布
5.3 繪制貝塞爾曲線
5.3.1 繪制二次方貝塞爾曲線
5.3.2 繪制三次方貝塞爾曲線
5.4 圖形的變換
5.4.1 保存與恢復Canvas狀態
5.4.2 移動坐標空間
5.4.3 旋轉坐標空間
5.4.4 縮放圖形
5.4.5 矩陣變換
5.5 圖形的組合與裁切
5.5.1 圖形的組合
5.5.2 裁切路徑
5.6 更多的顏色和樣式選項
5.6.1 應用不同的線型
5.6.2 繪制線性漸變
5.6.3 繪制徑向漸變
5.6.4 繪制圖案
5.6.5 設置圖形的透明度
5.6.6 創建陰影
5.7 繪制文字
5.7.1 繪制填充文字
5.7.2 文字相關屬性
5.7.3 繪制輪廓文字
5.7.4 測量文字寬度
5.8 操作與使用圖像
5.8.1 向Canvas中引入圖像
5.8.2 改變圖像大小
5.8.3 創建圖像切片
6 HTML5音頻與視頻
6.1 HTML5多媒體技術概述
6.1.1 關於編解碼器
6.1.2 音頻編解碼器
6.1.3 視頻編解碼器
6.2 瀏覽器支持概述
6.2.1 用JavaScript檢測音頻格式支持情況
6.2.2 用JavaScript檢測視頻格式支持情況
6.3 在HTML5中播放音頻
6.3.1 認識audio元素
6.3.2 播放音頻
6.4 在HTML5中播放視頻
6.4.1 認識video元素
6.4.2 播放視頻
6.5 音頻與視頻相關屬性、方法與事件
6.5.1 音頻與視頻相關屬性
6.5.2 音頻與視頻相關方法
6.5.3 音頻與視頻相關事件
6.6 綜合實戰
6.6.1 用腳本控制音樂播放
6.6.2 查看視頻幀畫面
7 Web存儲
7.1 認識Web Storage
7.1.1 Cookie存儲機制的優缺點
7.1.2 為什么要用Web Storage
7.1.3 Web Storage的優缺點
7.1.4 瀏覽器支持概述
7.2 使用Web Storage
7.2.1 檢查瀏覽器的支持性
7.2.2 設置和獲取數據
7.2.3 防止數據泄露
7.2.4 Web Storage的其他用法
7.2.5 Web Storage事件監測
7.2.6 實例1:設計網頁皮膚
7.2.7 實例2:跟蹤localStorage數據
7.2.8 實例3:設計計數器
7.2.9 綜合應用:Web應用項目實時跟蹤
7.3 Web SQL數據庫
7.3.1 Web SQL數據庫概述
7.3.2 使用Web SQL數據庫
7.3.3 實例1:創建簡單的本地數據庫
7.3.4 實例2:批量存儲本地數據
7.3.5 綜合應用:Web Storage和Web SQL混合開發
8 離線應用
8.1 HTML5離線應用概述
8.1.1 為什么要學習HTML5離線應用
8.1.2 瀏覽器支持概述
8.2 HTML5離線應用詳解
8.2.1 解析manifest文件
8.2.2 搭建離線應用程序
8.2.3 檢查瀏覽器是否支持
8.2.4 離線緩存更新實現
8.2.5 JavaScript接口實現
8.2.6 離線存儲事件監聽
8.3 實戰1:緩存首頁
8.4 實戰2:離線編輯內容
8.5 實戰3:離線跟蹤
9 Workers多線程處理
9.1 認識Web Workers
9.1.1 Web Workers概述
9.1.2 瀏覽器支持概述
9.1.3 熟悉Web Workers成員
9.2 使用Web Workers
9.2.1 檢查瀏覽器支持性
9.2.2 創建Web Workers
9.2.3 與Web Workers通信
9.2.4 使用Web Workers上機練習
9.3 案例實戰
9.3.1 使用多線程實現后台運算
9.3.2 在后台過濾值
9.3.3 多任務並發處理
9.3.4 在多線程之間通信
9.3.5 使用線程技術計算Fibonacci數列
9.3.6 使用多線程繪圖
9.4 綜合應用:模擬退火算法
9.4.1 認識模擬退火算法
9.4.2 編寫應用主頁面
9.4.3 編寫worker.js
9.4.4 與Web Workers通信
10 Geolocation地理位置
10.1 位置信息概述
10.1.1 為什么要學習Geolocation
10.1.2 位置信息表示方式
10.1.3 位置信息來源
10.1.4 IP定位
10.1.5 GPS定位
10.1.6 Wi-Fi定位
10.1.7 手機定位
10.1.8 自定義定位
10.2 使用Geolocation API
10.2.1 檢查瀏覽器支持性
10.2.2 獲取當前地理位置
10.2.3 監視位置信息
10.2.4 停止獲取位置信息
10.2.5 隱私保護
10.2.6 處理位置信息
10.2.7 使用position對象
10.3 案例實戰
10.3.1 使用Google地圖
10.3.2 跟蹤行走速度
11 CSS3概述
11.1 回顧CSS
11.1.1 CSS發展簡史
11.1.2 CSS 1.0和CSS 2.0概述
11.1.3 CSS與DIV標記之緣
11.1.4 CSS編碼規范
11.2 了解CSS3新增特性
11.2.1 屬性選擇器
11.2.2 RBGA透明度
11.2.3 多欄布局
11.2.4 多背景圖片
11.2.5 字符串溢出
11.2.6 塊陰影與圓角陰影
11.2.7 圓角
11.2.8 邊框圖片
11.2.9 形變
11.3 CSS3前景展望
11.3.1 CSS3的應用范圍
11.3.2 當前支持CSS3的瀏覽器
11.4 案例實戰:設計漂亮的表單
12 CSS選擇器
12.1 屬性選擇器
12.1.1 認識屬性選擇器
12.1.2 案例實戰
12.2 結構偽類選擇器
12.2.1 認識結構偽類選擇器
12.2.2 案例實戰
12.3 UI偽類選擇器
12.3.1 認識常用UI偽類選擇器
12.3.2 案例實戰
12.4 其他選擇器
13 文本、字體與顏色
13.1 設計文本陰影
13.1.1 定義text-shadow屬性
13.1.2 應用陰影效果
13.1.3 綜合實戰:設計黑客網站首頁
13.2 定義文本樣式
13.2.1 文本樣式簡介
13.2.2 溢出文本
13.2.3 文本換行
13.3 設計顏色樣式
13.3.1 使用RGBA顏色值
13.3.2 使用HSL顏色值
13.3.3 使用HSLA顏色值
13.3.4 定義opacity屬性
13.3.5 定義transparent顏色值
14 背景和邊框
14.1 設計多色邊框
14.1.1 用法詳解
14.1.2 案例實戰
14.2 設計邊框背景
14.2.1 用法詳解
14.2.2 案例實戰
14.3 設計圓角
14.3.1 用法詳解
14.3.2 案例實戰:設計橢圓圖形
14.4 設計陰影
14.4.1 用法詳解
14.4.2 案例實戰:設計Windows7界面效果
14.5 設計背景
14.5.1 定義背景坐標
14.5.2 定義背景裁剪區域
14.5.3 定義背景圖像大小
14.5.4 定義背景圖像循環方式
14.5.5 定義多背景圖像
15 2D變形
15.1 認識transform
15.2 2D變形
15.2.1 旋轉動畫
15.2.2 縮放動畫
15.2.3 移動動畫
15.2.4 傾斜動畫
15.2.5 變形動畫
15.2.6 案例實戰:設計塗鴉牆
15.3 自定義變形
15.4 定義復雜變形
16 設計動畫
16.1 平滑過渡
16.1.1 定義過渡屬性
16.1.2 定義過渡時間
16.1.3 定義過渡延遲時間
16.1.4 定義過渡效果
16.1.5 案例實戰:設計Mac OS導航器
16.2 3D動畫
16.2.1 定義動畫名稱
16.2.2 定義動畫時間
16.2.3 定義動畫播放方式
16.2.4 定義動畫延遲時間
16.2.5 定義動畫播放次數
16.2.6 定義動畫播放方向
16.2.7 案例實戰:設計圖片翻轉特效
16.3 漸變效果
16.3.1 設計Webkit漸變
16.3.2 Webkit案例實戰
16.3.3 設計Gecko漸變
16.3.4 Gecko案例實戰
16.3.5 設計IE漸變
16.3.6 設計W3C漸變
16.4 案例綜合實戰
16.4.1 設計禮品盒
16.4.2 設計折疊面板
16.4.3 設計易拉罐
16.4.4 設計光盤滑動動畫
16.4.5 設計下拉菜單
16.4.6 設計精致按鈕
17 網頁布局
17.1 設計多列布局
17.2 設置多列顯示樣式
17.2.1 定義列寬
17.2.2 定義列數
17.2.3 定義列間距
17.2.4 定義列邊框樣式
17.2.5 定義跨列顯示
17.2.6 定義列高度
17.2.7 定義打印列
17.3 設計盒布局
17.4 設置盒布局格式
17.4.1 定義自適應寬度
17.4.2 定義列顯示順序
17.4.3 定義列排列方向
17.4.4 定義模塊大小自適應
17.4.5 消除空白
17.4.6 定義對齊方式
17.5 綜合實戰:設計多列網頁
18 用戶界面
18.1 改變盒模型組成方式
18.2 調節元素尺寸
18.3 設計輪廓
18.3.1 定義輪廓線
18.3.2 定義輪廓線寬度
18.3.3 定義輪廓線樣式
18.3.4 定義輪廓線顏色
18.3.5 定義輪廓線位移
18.4 設計導航
18.4.1 定義導航順序
18.4.2 定義方向鍵控制順序
18.5 添加顯示內容
18.6 恢復默認樣式
18.6.1 取消元素樣式
18.6.2 慎用initial的情況
19 CSS3其他新特性
19.1 溢出處理
19.2 自定義字體類型
19.2.1 使用@font-face規則
19.2.2 開放字體
19.3 定義設備類型
19.3.1 認識Media Queries模塊
19.3.2 認識@media規則
19.3.3 使用@media規則
19.3.4 在網站中應用@media規則
19.4 添加語音功能
19.5 設計倒影
附錄
思維導圖
防止博客圖床圖片失效,防止圖片源站外鏈:
http://www.processon.com/chart_image/5e5b36eae4b0cc44b5b4a7eb.png)
思維導圖在線編輯鏈接: