HTML5+CSS3 Web前端開發與實例教程:微課視頻版》
本書內容
《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》秉承“思政引領,立德樹人”的教育理念,自然融入多維度、深層次的思政元素,全面對標企業和行業需求;引入現代Web前端開發的核心技術,如Flex布局、Grid布局,以及人工智能編程插件,同時融入企業開發實踐,確保學習內容與實際工作緊密相關。全書以一個完整案例為主線,結合綜合項目實戰操作,體現育人、應用和創新三項能力?!禜TML5+CSS3 Web前端開發與實例教程:微課視頻版》配套提供課程思政元素、案例源代碼、PPT課件、課后習題與答案、微課視頻、教案、教學大綱、章節測試、云題庫、實驗報告、學習通在線課程、企業高頻面試題、學科競賽真題等豐富的教學資源,并設有QQ群提供線上學習跟蹤和指導服務。
《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》共分14章,系統地講解Web前端開發的核心技術,主要內容包括Web前端開發概述、HTML5基礎、HTML5頁面元素和屬性、表單、CSS3基礎、CSS3修飾頁面元素、CSS3高級選擇器、CSS3盒子模型、浮動與定位、CSS3高級應用、網頁布局、Flex布局、Grid布局等,并提供“大學生參軍入伍專題網站”和“文創商城”兩個實戰案例。
本書作者
盧欣欣,副教授。長期從事高校教學工作,專注Web應用開發,項目開發經驗豐富。主講《Web程序設計》《高級程序設計》《軟件開發綜合實踐》等課程,先后主編教材2部,參編教材3部。在慕課網上線的《企業網站綜合布局實戰》課程學習人數超15萬人。
崔仲遠,副教授,畢業于北京交通大學。長期從事高校教學工作和軟件項目開發工作,實戰開發經驗豐富。先后承擔《網頁特效設計》《Web前端基礎》《跨平臺腳本開發技術》等多門課程的教學任務,發表學術論文多篇,主編教材2部,參編教材3部、專著1部。主持省級教改項目1項、科研項目1項。
本書讀者
《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》既可作為本??圃盒S嬎銠C相關專業的Web程序設計、網頁設計與制作等課程的教材,也可作為Web應用開發人員的自學手冊和技術參考書。
本書目錄
第1章 Web前端開發概述 1
1.1 Web前端開發職責 1
1.2 Web前端開發相關概念 2
1.3 Web前端開發相關技術 3
1.3.1 Web標準 3
1.3.2 HTML 4
1.3.3 CSS 4
1.3.4 JavaScript 5
1.4 Web前端開發工具 5
1.4.1 代碼編輯工具:VSCode 6
1.4.2 代碼運行工具:瀏覽器 8
1.4.3 開發者工具 9
1.4.4 人工智能輔助編程工具 10
1.5 網站設計與開發流程 11
1.6 實戰案例:網頁顯示“社會主義核心價值觀” 12
1.7 本章小結 13
第2章 HTML5基礎 14
2.1 HTML5語法基礎 14
2.1.1 HTML文檔結構 14
2.1.2 HTML標簽語法 17
2.1.3 HTML注釋 18
2.2 文本控制標簽 19
2.2.1 標題標簽 19
2.2.2 段落標簽 20
2.2.3 換行標簽 20
2.2.4 文本格式化標簽 21
2.2.5 特殊字符 22
2.3 圖像標簽 23
2.3.1 網頁常用圖像格式 23
2.3.2 圖像標簽的使用 24
2.3.3 相對路徑與絕對路徑 26
2.4 超鏈接標簽 27
2.4.1 文本鏈接 27
2.4.2 圖像鏈接 28
2.4.3 書簽(錨點)鏈接 28
2.4.4 其他鏈接 30
2.5 列表 30
2.5.1 有序列表 31
2.5.2 無序列表 32
2.5.3 定義列表 34
2.5.4 嵌套列表 35
2.6 表格 36
2.6.1 表格結構 36
2.6.2 表格標簽 37
2.7 視頻和音頻標簽 41
2.7.1 視頻標簽 41
2.7.2 音頻標簽 42
2.8 其他標簽 42
2.8.1 預格式化標簽 42
2.8.2 水平線標簽 43
2.8.3 行內容器標簽 43
2.9 實戰案例:“大學生參軍網站”兵役登記頁面 44
2.10 本章小結 46
第3章 HTML5頁面元素和屬性 47
3.1 文檔結構標簽 47
3.1.1標簽 47
3.1.2標簽 49
3.1.3標簽 50
3.1.4標簽 51
3.1.5標簽 53
3.1.6標簽 53
3.1.7和標簽 54
3.1.8標簽 55
3.2 交互元素 55
3.2.1 標簽 55
3.2.2 標簽 56
3.2.3標簽 57
3.3 文本層次語義標簽 58
3.3.1 標簽 58
3.3.2 標簽 59
3.3.3 標簽 60
3.4 全局屬性 61
3.5 實戰案例:“大學生參軍網站”頁面結構 62
3.6 本章小結 64
第4章 表單 65
4.1 表單概述 65
4.2標簽 67
4.3 標簽 68
4.3.1 單行文本框 69
4.3.2 密碼框 69
4.3.3 文件域 70
4.3.4 單選按鈕和復選框 71
4.3.5 隱藏域 73
4.3.6 按鈕 73
4.3.7 HTML5新增輸入元素 76
4.4 標簽 78
4.5 標簽 79
4.6 選擇列表標簽 80
4.7 多行文本框標簽 83
4.8 表單常用屬性 84
4.9 實戰案例:“大學生參軍網站”網上咨詢表單 86
4.10 本章小結 88
第5章 CSS3基礎 89
5.1 CSS概述 89
5.2 CSS語法規則 90
5.3 CSS樣式的引入方法 91
5.3.1 行內樣式表 91
5.3.2 內部樣式表 92
5.3.3 外部樣式表 93
5.4 CSS基本選擇器 94
5.4.1 標簽選擇器 94
5.4.2 ID選擇器 95
5.4.3 類選擇器 95
5.4.4 通用選擇器 97
5.5 實戰案例:“大學生參軍網站”公共樣式表制作 97
5.6 本章小結 98
第6章 CSS3修飾頁面元素 99
6.1 CSS字體樣式 99
6.1.1 字體粗細屬性 99
6.1.2 字體風格屬性 100
6.1.3 字體大小屬性 101
6.1.4 字體族屬性 103
6.1.5 字體屬性 106
6.2 CSS文本樣式 107
6.2.1 行高屬性 107
6.2.2 顏色屬性 109
6.2.3 文本水平對齊屬性 110
6.2.4 首行縮進屬性 111
6.2.5 文本修飾屬性 111
6.2.6 字符間距屬性 112
6.2.7 字間距屬性 113
6.2.8 字母大小寫屬性 114
6.2.9 文本陰影效果屬性 115
6.3 CSS表格樣式 116
6.4 CSS表單樣式 118
6.4.1 單行文本框美化 119
6.4.2 按鈕美化 120
6.4.3 下拉列表美化 120
6.5 CSS列表樣式 122
6.6 實戰案例:“大學生參軍網站”在線咨詢頁面 123
6.7 本章小結 126
第7章 CSS3高級選擇器 127
7.1 組合選擇器 127
7.1.1 交集選擇器 127
7.1.2 并集選擇器 128
7.1.3 后代選擇器 129
7.1.4 子元素選擇器 130
7.1.5 相鄰兄弟選擇器 131
7.1.6 通用兄弟選擇器 132
7.2 屬性選擇器 133
7.3 偽類選擇器 134
7.4 偽元素選擇器 136
7.5 CSS三大特性 138
7.6 本章小結 141
第8章 CSS3盒子模型 142
8.1 盒子模型概述 142
8.1.1 認識盒子模型 142
8.1.2
標簽 144
8.2 盒子模型的相關屬性 144
8.2.1 內容區域的寬度和高度 144
8.2.2 邊框 145
8.2.3 內邊距 152
8.2.4 外邊距 153
8.3 陰影 155
8.4 box-sizing 156
8.5 背景屬性 158
8.5.1 背景顏色 158
8.5.2 背景圖像 158
8.5.3 圖像平鋪方式 158
8.5.4 背景圖像位置 160
8.5.5 背景圖像固定 161
8.5.6 背景圖像大小 161
8.5.7 背景裁剪 163
8.5.8 背景復合屬性 164
8.5.9 CSS精靈圖 165
8.6 實戰案例:“大學生參軍網站”登錄頁面 166
8.7 本章小結 169
第9章 浮動與定位 170
9.1 標準文檔流 170
9.2 元素的分類 171
9.2.1 塊級元素、行內元素與行內塊元素 171
9.2.2 元素的類型轉換 172
9.3 元素的浮動 173
9.3.1 設置浮動 174
9.3.2 清除浮動 176
9.4 元素的定位 180
9.4.1 定位的概念 180
9.4.2 定位屬性 181
9.4.3 靜態定位 181
9.4.4 相對定位 182
9.4.5 絕對定位 183
9.4.6 固定定位 186
9.4.7 粘性定位 187
9.4.8 層疊等級屬性 188
9.5 實戰案例:“大學生參軍網站”輪播圖效果 190
9.6 本章小結 192
第10章 CSS3高級應用 193
10.1 變換 193
10.1.1 旋轉 194
10.1.2 傾斜 195
10.1.3 縮放 196
10.1.4 平移 197
10.1.5 變換原點 198
10.2 過渡 200
10.3 動畫 202
10.4 實戰案例:“大學生參軍網站”CSS3高級應用 205
10.5 本章小結 208
第11章 網頁布局 209
11.1 網頁布局概述 209
11.1.1 網頁布局的概念 209
11.1.2 網頁布局的流程 210
11.1.3 常見的網頁布局方法 211
11.2 網頁布局命名規范 211
11.3 常見布局的實現 212
11.3.1 單列布局 212
11.3.2 兩列常規布局 214
11.3.3 三列常規布局 216
11.3.4 兩列自適應等高布局 217
11.3.5 三列自適應布局 219
11.4 實戰案例:“大學生參軍網站”首頁主體部分 223
11.5 本章小結 225
第12章 Flex布局 226
12.1 Flex布局概述 226
12.2 Flex布局相關概念 227
12.3 容器屬性 227
12.3.1 display屬性 228
12.3.2 flex-direction屬性 228
12.3.3 flex-wrap屬性 230
12.3.4 justify-content屬性 232
12.3.5 align-items屬性 233
12.3.6 align-content屬性 235
12.4 項目屬性 236
12.4.1 order屬性 236
12.4.2 flex-grow屬性 237
12.4.3 flex-shrink屬性 239
12.4.4 flex-basis屬性 240
12.4.5 flex屬性 241
12.5 實戰案例:“大學生參軍網站”導航條 242
12.6 本章小結 244
第13章 Grid布局 245
13.1 Grid布局概述 245
13.2 Grid布局相關概念 246
13.3 容器屬性 246
13.3.1 display屬性 247
13.3.2 劃分網格 248
13.3.3 行間隔和列間隔 252
13.3.4 項目對齊方式 253
13.4 項目屬性 255
13.4.1 grid-column和grid-row屬性 255
13.4.2 grid-area屬性 257
13.5 實戰案例:“大學生參軍網站”視頻展播列表 258
13.6 本章小結 260
第14章 Web前端項目綜合實踐——文創商城 261
14.1 項目概述 261
14.2 需求分析 262
14.3 原型設計 262
14.4 公共部分的設計與實現 265
14.4.1 重置樣式 265
14.4.2 頁面頭部 265
14.4.3 頁面底部 268
14.4.4 懸浮側邊欄 270
14.5 首頁的設計與實現 271
14.5.1 甄選好物版塊 271
14.5.2 國博文房版塊 274
14.6 商品列表頁的設計與實現 277
14.6.1 商品類型篩選 277
14.6.2 分頁導航 278
14.7 商品詳情頁的設計與實現 279
14.8 本章小結 283
編輯推薦
1HTML5與CSS3是Web前端開發的兩大核心技術,它們不僅是Web前端開發工程師必須掌握的技能,也是高校一門重要的Web前端課程內容
2《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》以“從項目中來到項目中去”為主旨,從Web前端開發的基本概念入手,系統介紹HTML5、CSS3網頁編程技巧。
3《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》采取“知識點講解+示例解析+案例詳講+高頻面試題+實踐操作+學科競賽真題”的遞進式教學模式,引導讀者理解理論知識,掌握開發方法,學會復雜的網站設計技能,全面提升讀者的Web前端開發能力。
4《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》配套資源非常豐富,包括思政元素、案例源代碼、PPT課件、微課視頻、習題與答案、教案、教學大綱、章節測試、云題庫、實驗報告、學習通在線課程,能幫助讀者快速掌握HTML5與CSS3前端技術。
本文摘自《HTML5+CSS3 Web前端開發與實例教程:微課視頻版》,獲出版社和作者授權發布。
在很多網站上都會使用到視頻和音頻,HTML5 中提供了展示視頻和音頻的標簽。向網頁嵌入視頻可以使用 <video> 標簽,而嵌入音頻可以使用 <audio> 標簽。這兩個標簽都是 HTML 5 中新增的標簽,兩個標簽中的屬性和方法也很類似,但也有些不同。其中 audio 元素用于定義聲音,比如音樂, video 元素用于定義視頻,如電影等。
<video> 標簽可以用于定義視頻,且提供了播放、暫停、音量控件來控制視頻。舉個例子,像我們俠課島網站上,課程視頻播放,就是通過 <video> 標簽來實現的。下面我們來看一下如何向網頁中嵌入一個視頻。
示例:
首先我們準備一個視頻,例如一個 test.mp4,然后使用 <video> 標簽嵌入視頻,如下所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>HTML5學習(9xkd.com)</title>
</head>
<body>
<video src="./test.mp4" controls="controls" width="700px" height="400px"></video>
</body>
</html>
在瀏覽器中的預覽效果:
從上圖中可以看到,我們通過 <video> 標簽成功向網頁中插入了一個視頻, 其中 src 屬性用于引入要播放的視頻的 URL,注意視頻地址一定要正確,如果地址錯誤,視頻是不能顯示的。然后我們通過 width、height 屬性設置了視頻的寬度為 700px ,高度為 400px。
然后可以看到,視頻上還顯示了播放、調整音量等控件,當我們點擊播放按鈕時,視頻就會開始播放。這是因為我們設置了 controls 屬性,如果我們沒有設置這個屬性,視頻將會顯示一個靜止的畫面,并且不管怎么點擊都是沒有反應的。大家可以試一下,不設置 controls 屬性然后在瀏覽器中查看演示效果,這里就不演示給大家看了。
video 元素中的常用屬性如下所示:
有些比較老的瀏覽器可能不支持 <video> 標簽,例如 IE8 及以下的瀏覽器就不支持,而 IE9+、Firefox、Opera、Chrome、Safari 等瀏覽器都支持 <video> 標簽。
所以我們可以在 <video> 標簽中放置文本內容,這樣當某個瀏覽器不支持此標簽時,就可以顯示提示內容:
<video src="./test.mp4" controls="controls" width="700px" height="400px">
您的瀏覽器不支持 video 標簽
</video>
這樣用戶就會知道,是因為瀏覽器不支持所以加載視頻不成功,可以換一個瀏覽器。
像我們平時看到的視頻格式有很多種,例如常見的有 mp4、AVI、mov、rmvb、Ogg 等等, 目前 video 元素支持的視頻格式有下面三種:
這三種視頻格式,在不同的瀏覽器中兼容性不同,例如 MP4 格式不支持 Firefox 和 Opera 瀏覽器,Ogg 格式不支持IE、Safari 瀏覽器,WebM 格式不支持IE、Safari 瀏覽器等。
所以我們可能需要在不同的瀏覽器中使用不同的視頻格式,這需要用到 <source> 標簽。
<source> 標簽可以為媒體元素定義媒介資源,例如 video 和 audio 元素。
例如 <video> 標簽中可以包含多個 <source> 標簽,<source> 標簽可以鏈接不同的視頻文件,瀏覽器將使用第一個可識別的格式。
示例:
例如我們插入的視頻播放器,帶有兩個源文件,瀏覽器會根據需要來選擇源文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>HTML5學習(9xkd.com)</title>
</head>
<body>
<video controls="controls" width="700px" height="400px">
<source src="./test.mp4" type="video/mp4">
<source src="./test.ogg" type="video/ogg">
您的瀏覽器不支持 video 標簽
</video>
</body>
</html>
像上述代碼中,如果是 Safari 瀏覽器就會選擇第一個源文件,如果是 Firefox 瀏覽器則會選擇第二個源文件。
<source> 標簽有三個屬性:
向網頁中嵌入音頻可以使用 <audio> 標簽,此標簽的使用和 <video> 標簽類似。插入視頻是有畫面的,我們也可以調整視頻的寬和高等,而插入音頻是沒有畫面的。
audio 元素支持的格式和 video 元素也有一點區別:
示例:
例如我們插入一段音頻,在瀏覽器中可以看到,是沒有畫面的,只有聲音:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>HTML5學習(9xkd.com)</title>
</head>
<body>
<audio controls="controls">
<source src="./test.mp4" type="audio/mpeg">
<source src="./test.ogg" type="audio/ogg">
您的瀏覽器不支持 audio 標簽
</audio>
</body>
</html>
在瀏覽器中的演示效果:
向網頁中嵌入音頻時,也可以通過 <source> 標簽來指定兩個源文件,<source> 標簽允許規定兩個視頻或者音頻文件供瀏覽器根據它對媒體類型或者編解碼器的支持進行選擇。
audio 元素中的常用屬性和 video 元素差不多,但是 audio 元素中沒有 width、height 等屬性。
常用屬性如下所示:
向網頁中嵌入視頻和音頻其實很簡單,要注意 video 元素 和 audio 元素支持的視頻、音頻格式類型,如果插入的視頻格式不支持,則視頻或音頻不會顯示。
更多可以查看鏈接:https://www.9xkd.com/
開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個開源的HTML5流媒體播放器——PearPlayer.js。
PearPlayer是完全用JavaScript寫的開源HTML5流媒體播放框架,實現了融合HTTP(含HTTPS、HTTP2)和WebRTC的多協議、多源、低延遲、高帶寬利用率的無插件Web客戶端流媒體加速能力。基于H5的MSE(Media Source Extension)技術將來自多個源節點的Buffer分塊喂給播放器,再加上精心設計的算法可實現最優的調度策略及對各種異常情況的處理,PearPlayer由此能在保證用戶流暢視頻體驗的前提下最大化P2P率。
首先通過script標簽導入pear-player.min.js:
<script src="./dist/pear-player.min.js"></script>
或者使用CDN:
<script src="https://cdn.jsdelivr.net/npm/pearplayer@latest"></script>
假設用video標簽播放以下視頻,HTML如下:
<video id="pearvideo" src="https://qq.webrtc.win/tv/Pear-Demo-Yosemite_National_Park.mp4" controls>
只需以下幾行代碼,即可將PearPlayer綁定到video標簽:
<script>
/**
* 第一個參數為video標簽的id或class
* opts是可選的參數配置
*/
if (PearPlayer.isMSESupported()) {
var player = new PearPlayer('#pearvideo', opts);
}
</script>
至此,就已經添加播放器了,無需任何插件。
開源地址:https://gitee.com/PearInc/PearPlayer.js
*請認真填寫需求信息,我們會在24小時內與您取得聯系。