Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
對于前端來說,HTML 都是最基礎(chǔ)的內(nèi)容。
今天,我們來了解一下 HTML 和網(wǎng)頁有什么關(guān)系,以及與 DOM 有什么不同。通過本講內(nèi)容,你將掌握瀏覽器是怎么處理 HTML 內(nèi)容的,以及在這個(gè)過程中我們可以進(jìn)行怎樣的處理來提升網(wǎng)頁的性能,從而提升用戶的體驗(yàn)。
不知你是否有過這樣的體驗(yàn):當(dāng)打開某個(gè)瀏覽器的時(shí)候,發(fā)現(xiàn)一直在轉(zhuǎn)圈,或者等了好長時(shí)間才打開頁面……
此時(shí)的你,會(huì)選擇關(guān)掉頁面還是耐心等待呢?
這一現(xiàn)象,除了網(wǎng)絡(luò)不穩(wěn)定、網(wǎng)速過慢等原因,大多數(shù)都是由于頁面設(shè)計(jì)不合理導(dǎo)致加載時(shí)間過長導(dǎo)致的。
我們都知道,頁面是用 HTML/CSS/JavaScript 來編寫的。
HTML由一系列的元素組成,通常稱為HTML元素。HTML 元素通常被用來定義一個(gè)網(wǎng)頁結(jié)構(gòu),基本上所有網(wǎng)頁都是這樣的 HTML 結(jié)構(gòu):
<html>
<head></head>
<body></body>
</html>
其中:
HTML 中的元素特別多,其中還包括可用于 Web Components 的自定義元素。
前面我們提到頁面 HTML 結(jié)構(gòu)不合理可能會(huì)導(dǎo)致頁面響應(yīng)慢,這個(gè)過程很多時(shí)候體現(xiàn)在<script>和<style>元素的設(shè)計(jì)上,它們會(huì)影響頁面加載過程中對 Javascript 和 CSS 代碼的處理。
因此,如果想要提升頁面的加載速度,就需要了解瀏覽器頁面的加載過程是怎樣的,從根本上來解決問題。
瀏覽器在加載頁面的時(shí)候會(huì)用到 GUI 渲染線程和 JavaScript 引擎線程(更詳細(xì)的瀏覽器加載和渲染機(jī)制將在第 7 講中介紹)。其中,GUI 渲染線程負(fù)責(zé)渲染瀏覽器界面 HTML 元素,JavaScript 引擎線程主要負(fù)責(zé)處理 JavaScript 腳本程序。
由于 JavaScript 在執(zhí)行過程中還可能會(huì)改動(dòng)界面結(jié)構(gòu)和樣式,因此它們之間被設(shè)計(jì)為互斥的關(guān)系。也就是說,當(dāng) JavaScript 引擎執(zhí)行時(shí),GUI 線程會(huì)被掛起。
以網(wǎng)易云課堂官網(wǎng)為例,我們來看看網(wǎng)頁加載流程。
(1)當(dāng)我們打開官網(wǎng)的時(shí)候,瀏覽器會(huì)從服務(wù)器中獲取到 HTML 內(nèi)容。
(2)瀏覽器獲取到 HTML 內(nèi)容后,就開始從上到下解析 HTML 的元素。
(3)<head>元素內(nèi)容會(huì)先被解析,此時(shí)瀏覽器還沒開始渲染頁面。
我們看到<head>元素里有用于描述頁面元數(shù)據(jù)的<meta>元素,還有一些<link>元素涉及外部資源(如圖片、CSS 樣式等),此時(shí)瀏覽器會(huì)去獲取這些外部資源。除此之外,我們還能看到<head>元素中還包含著不少的<script>元素,這些<script>元素通過src屬性指向外部資源。
(4)當(dāng)瀏覽器解析到這里時(shí)(步驟 3),會(huì)暫停解析并下載 JavaScript 腳本。
(5)當(dāng) JavaScript 腳本下載完成后,瀏覽器的控制權(quán)轉(zhuǎn)交給 JavaScript 引擎。當(dāng)腳本執(zhí)行完成后,控制權(quán)會(huì)交回給渲染引擎,渲染引擎繼續(xù)往下解析 HTML 頁面。
(6)此時(shí)<body>元素內(nèi)容開始被解析,瀏覽器開始渲染頁面。
在這個(gè)過程中,我們看到<head>中放置的<script>元素會(huì)阻塞頁面的渲染過程:把 JavaScript 放在<head>里,意味著必須把所有 JavaScript 代碼都下載、解析和解釋完成后,才能開始渲染頁面。
到這里,我們就明白了:如果外部腳本加載時(shí)間很長(比如一直無法完成下載),就會(huì)造成網(wǎng)頁長時(shí)間失去響應(yīng),瀏覽器就會(huì)呈現(xiàn)“假死”狀態(tài),用戶體驗(yàn)會(huì)變得很糟糕。
因此,對于對性能要求較高、需要快速將內(nèi)容呈現(xiàn)給用戶的網(wǎng)頁,常常會(huì)將 JavaScript 腳本放在<body>的最后面。這樣可以避免資源阻塞,頁面得以迅速展示。我們還可以使用defer/async/preload等屬性來標(biāo)記<script>標(biāo)簽,來控制 JavaScript 的加載順序。
百度首頁
對于百度這樣的搜索引擎來說,必須要在最短的時(shí)間內(nèi)提供到可用的服務(wù)給用戶,其中就包括搜索框的顯示及可交互,除此之外的內(nèi)容優(yōu)先級會(huì)相對較低。
瀏覽器在渲染頁面的過程需要解析 HTML、CSS 以得到 DOM 樹和 CSS 規(guī)則樹,它們結(jié)合后才生成最終的渲染樹并渲染。因此,我們還常常將 CSS 放在<head>里,可用來避免瀏覽器渲染的重復(fù)計(jì)算。
我們知道<p>是 HTML 元素,但又常常將<p>這樣一個(gè)元素稱為 DOM 節(jié)點(diǎn),那么 HTML 和 DOM 到底有什么不一樣呢?
根據(jù) MDN 官方描述:文檔對象模型(DOM)是 HTML 和 XML 文檔的編程接口。
也就是說,DOM 是用來操作和描述 HTML 文檔的接口。如果說瀏覽器用 HTML 來描述網(wǎng)頁的結(jié)構(gòu)并渲染,那么使用 DOM 則可以獲取網(wǎng)頁的結(jié)構(gòu)并進(jìn)行操作。一般來說,我們使用 JavaScript 來操作 DOM 接口,從而實(shí)現(xiàn)頁面的動(dòng)態(tài)變化,以及用戶的交互操作。
在開發(fā)過程中,常常用對象的方式來描述某一類事物,用特定的結(jié)構(gòu)集合來描述某些事物的集合。DOM 也一樣,它將 HTML 文檔解析成一個(gè)由 DOM 節(jié)點(diǎn)以及包含屬性和方法的相關(guān)對象組成的結(jié)構(gòu)集合。
我們常見的 HTML 元素,在瀏覽器中會(huì)被解析成節(jié)點(diǎn)。比如下面這樣的 HTML 內(nèi)容:
<html>
<head>
<title>標(biāo)題</title>
</head>
<body>
<a href='xx.com'>我的超鏈接</a>
<h1>頁面第一標(biāo)題</h1>
</body>
</html>
打開控制臺(tái) Elements 面板,可以看到這樣的 HTML 結(jié)構(gòu),如下圖所示:
在瀏覽器中,上面的 HTML 會(huì)被解析成這樣的 DOM 樹,如下圖所示:
我們都知道,對于樹狀結(jié)構(gòu)來說,常常使用parent/child/sibling等方式來描述各個(gè)節(jié)點(diǎn)之間的關(guān)系,對于 DOM 樹也不例外。
舉個(gè)例子,我們常常會(huì)對頁面功能進(jìn)行抽象,并封裝成組件。但不管怎么進(jìn)行整理,頁面最終依然是基于 DOM 的樹狀結(jié)構(gòu),因此組件也是呈樹狀結(jié)構(gòu),組件間的關(guān)系也同樣可以使用parent/child/sibling這樣的方式來描述。同時(shí),現(xiàn)在大多數(shù)應(yīng)用程序同樣以root為根節(jié)點(diǎn)展開,我們進(jìn)行狀態(tài)管理、數(shù)據(jù)管理也常常會(huì)呈現(xiàn)出樹狀結(jié)構(gòu)。
我們知道,瀏覽器中各個(gè)元素從頁面中接收事件的順序包括事件捕獲階段、目標(biāo)階段、事件冒泡階段。其中,基于事件冒泡機(jī)制,我們可以實(shí)現(xiàn)將子元素的事件委托給父級元素來進(jìn)行處理,這便是事件委托。
如果我們在每個(gè)元素上都進(jìn)行監(jiān)聽的話,則需要綁定三個(gè)事件;(假設(shè)頁面上有a,b,c三個(gè)兄弟節(jié)點(diǎn))
function clickEventFunction(e) {
console.log(e.target === this); // logs `true`
// 這里可以用 this 獲取當(dāng)前元素
}
// 元素a,b,c綁定
element2.addEventListener("click", clickEventFunction, false);
element5.addEventListener("click", clickEventFunction, false);
element8.addEventListener("click", clickEventFunction, false);
使用事件委托,可以通過將事件添加到它們的父節(jié)點(diǎn),而將事件委托給父節(jié)點(diǎn)來觸發(fā)處理函數(shù):
function clickEventFunction(event) {
console.log(e.target === this); // logs `false`
// 獲取被點(diǎn)擊的元素
const eventTarget = event.target;
// 檢查源元素`event.target`是否符合預(yù)期
// 此處控制廣告面板的展示內(nèi)容
}
// 元素1綁定
element1.addEventListener("click", clickEventFunction, false);
這樣能解決什么問題呢?
常見的使用方式主要是上述這種列表結(jié)構(gòu),每個(gè)選項(xiàng)都可以進(jìn)行編輯、刪除、添加標(biāo)簽等功能,而把事件委托給父元素,不管我們新增、刪除、更新選項(xiàng),都不需要手動(dòng)去綁定和移除事件。
如果在列表數(shù)量內(nèi)容較大的時(shí)候,對成千上萬節(jié)點(diǎn)進(jìn)行事件監(jiān)聽,也是不小的性能消耗。使用事件委托的方式,我們可以大量減少瀏覽器對元素的監(jiān)聽,也是在前端性能優(yōu)化中比較簡單和基礎(chǔ)的一個(gè)做法。
注意:
我們了解了 HTML 的作用,以及它是如何影響瀏覽器中頁面的加載過程的,同時(shí)還介紹了使用 DOM 接口來控制 HTML 的展示和功能邏輯。我們了解了DOM解析事件委托等相關(guān)概念。
如果您看過《HTML是什么?——零基礎(chǔ)自學(xué)網(wǎng)頁制作》這篇教程,請按照其中說明創(chuàng)建一個(gè)txt文件。具體過程如下:
step1:在您方便的磁盤中建立一個(gè)文件夾,命名為"零基礎(chǔ)自學(xué)網(wǎng)頁制作"。例如我在D盤中建立了"零基礎(chǔ)自學(xué)網(wǎng)頁制作"文件夾。
step2:在文件夾中創(chuàng)建"HTML框架.txt"文件。鼠標(biāo)移動(dòng)到空白處點(diǎn)擊右鍵選擇"文本文檔"。
命名為"html框架",如下圖所示。
如果您的電腦沒有顯示".txt"后綴的話,請做如下操作:點(diǎn)擊"工具",找到"文件夾選項(xiàng)"
菜單如下:點(diǎn)擊"查看選項(xiàng)"。
下拉滑條,找到"隱藏已知文件類型的擴(kuò)展名"選項(xiàng),將前面的對勾去掉。
如果您使用的是win10的話請參考《邊學(xué)邊做網(wǎng)頁篇------初識(shí)HTML》,這也是我做的教程,不過以后都使用這個(gè)賬號來發(fā)了。
step3:把"HTML框架"復(fù)制粘貼到"html框架.txt"文件中。HTML框架代碼如下:
<!DOCTYPE HTML> <html> <head> </head><body> </body> </html>
代碼講解請參照《HTML是什么?——零基礎(chǔ)自學(xué)網(wǎng)頁制作》這篇教程中的講解。
粘貼后效果如下:使用CTRL+s組合鍵保存文件。
step4:復(fù)制"html框架.txt"文件,更名為"第一個(gè)網(wǎng)頁.txt"。原始的"html框架.txt"文件為以后備用。
如圖所示:
step5:把"第一個(gè)網(wǎng)頁.txt"的后綴名".txt"改為".html"。
首先將光標(biāo)放在"第一個(gè)網(wǎng)頁.txt"文件上,點(diǎn)擊右鍵,選擇"重命名"。如圖:
選擇".txt"
更改為".html",敲擊回車鍵。這時(shí)會(huì)彈出一個(gè)對話框,如圖:
大膽的點(diǎn)擊"是"即可。
修改后文件是這樣的,如圖:因?yàn)槲业哪J(rèn)瀏覽器是360,所以,".html"文件圖標(biāo)顯示為360瀏覽器的圖標(biāo),顯示其他瀏覽器的圖標(biāo)也沒有問題。
step6:將鼠標(biāo)移動(dòng)到"第一個(gè)網(wǎng)頁.html"文件上,單擊右鍵,選擇打開方式,如圖:
選擇任何一個(gè)瀏覽器打開即可,我使用的是火狐瀏覽器(Firefox),打開后如圖所示:空白一片。
點(diǎn)擊鍵盤F12鍵,看一下控制臺(tái),如圖:查看器中已經(jīng)顯示我們的代碼框架了。成功!
如果網(wǎng)頁是一道菜,那么,html框架我們可以理解為裝菜的白盤子,所以我們打開框架時(shí),瀏覽器顯示一片白。下面我們?yōu)楸P子中加些簡單的"菜"。
首先我們?yōu)轫撁嫣砑?#34;標(biāo)題"
在添加標(biāo)題前,我們來看一下html框架代碼中的內(nèi)容,在<html></html>標(biāo)簽中有<head></head>和<body></body>兩個(gè)兄弟標(biāo)簽。
我們在頁面中看到的所有的內(nèi)容都是添加到<body></body>標(biāo)簽中間!
<head></head>標(biāo)簽中的內(nèi)容并不會(huì)顯示在頁面中。
那么如何添加"標(biāo)題"呢?
標(biāo)題在HTML中用<h></h>標(biāo)簽表示。在<h></h>中間加入文字內(nèi)容即可。如下所示:
<h>第一個(gè)頁面</h>
右鍵,使用"記事本"打開"第一個(gè)網(wǎng)頁.html"文件。如圖所示:如果您的"打開方式"中沒有"記事本"請點(diǎn)擊"選擇默認(rèn)程序"
在"其他程序"中找到"記事本"。點(diǎn)擊"確定"。從此,"記事本"就一直存在于"打開方式"中了。
我們把這句代碼粘貼到<body></body>之間。如下所示:保存后使用瀏覽器打開。
<!DOCTYPE HTML><html><head> </head> <body> <h>第一個(gè)頁面</h> </body> </html>
然后,使用瀏覽器打開,如圖所示:標(biāo)題出現(xiàn)在頁面中了。
下面,我們來添加段落內(nèi)容。
段落在HTML中使用<p></p>標(biāo)簽添加。代碼如下
<p>千里之行始于足下</p>
請各位自行將代碼添加到"第一個(gè)網(wǎng)頁.html"文件中吧!示例代碼如下:
<!DOCTYPE HTML> <html> <head> </head> <body> <h>第一個(gè)網(wǎng)頁</h><p>千里之行始于足下</p> </body> </html>
結(jié)果如圖所示:
通過這個(gè)練習(xí),我們可以發(fā)現(xiàn)一個(gè)規(guī)律,在<body></body>中,子元素代碼的上下順序代表了它在頁面中顯示的排版順序。
這也簡單回答了代碼結(jié)構(gòu)與排版的關(guān)系,html的標(biāo)簽語句只是標(biāo)記了它所承載的信息的屬性和版面位置。
基于這個(gè)特性,html被稱為超文本標(biāo)記語言。
下一期我們具體討論頁面中文字編輯的技巧。
喜歡的小伙伴請加關(guān)注,有任何問題請給我留言,歡迎大家給與指正!感激不盡!
HTML序章(學(xué)習(xí)目的、對象、基本概念)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML是什么?——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML頁面中head標(biāo)簽有啥用?——零基礎(chǔ)自學(xué)網(wǎng)頁制作
初識(shí)meta標(biāo)簽與SEO——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的元素使用方法1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的元素使用方法2——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML元素中的屬性1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML元素中的屬性2(路徑詳解)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格1(基本元素)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格2(表格頭部與腳部)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格3(間距與顏色)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格4(行顏色與表格嵌套)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
16進(jìn)制顏色表示與RGB色彩模型——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的塊級元素與內(nèi)聯(lián)元素——零基礎(chǔ)自學(xué)網(wǎng)頁制作
初識(shí)HTML中的<div>塊元素——零基礎(chǔ)自學(xué)網(wǎng)頁制作
在HTML頁面中嵌入其他頁面的方法——零基礎(chǔ)自學(xué)網(wǎng)頁制作
封閉在家學(xué)網(wǎng)頁制作!為頁面嵌入PDF文件——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單元素初識(shí)1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單元素初識(shí)2——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單3(下拉列表、多行文字輸入)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單4(form的action、method屬性)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML列表制作講解——零基礎(chǔ)自學(xué)網(wǎng)頁制作
為HTML頁面添加視頻、音頻的方法——零基礎(chǔ)自學(xué)網(wǎng)頁制作
音視頻格式轉(zhuǎn)換神器與html視頻元素加字幕——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中使用<a>標(biāo)簽實(shí)現(xiàn)文本內(nèi)鏈接——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML的全稱是超文本標(biāo)記語言,英文全稱是HyperText Markup Language。如果您是零基礎(chǔ)的話,看到這個(gè)名字,即使是漢語的,估計(jì)也會(huì)不知所云。
超文本指的是用超鏈接的方法,將各種不同空間的文字信息組織在一起的網(wǎng)狀文本。通俗來說就是多個(gè)文本之間通過超鏈接相互連接在一起,這些相互連接的文本集合稱為"超文本"。超文本是網(wǎng)頁制作一個(gè)非常重要的概念,可以說網(wǎng)絡(luò)的精髓就在于"互聯(lián)"。
這些相互關(guān)聯(lián)的信息媒體可能在同一文本中,也可能是其他文件,或是地理位置相距遙遠(yuǎn)的某臺(tái)計(jì)算機(jī)上的文件。這種組織信息方式將分布在不同位置的信息資源用隨機(jī)方式進(jìn)行連接,為人們查找,檢索信息提供方便。(孫素華編著.Dreamweaver CS5 Flash CS5 Photoshop CS5網(wǎng)頁設(shè)計(jì)從入門到精通:中國青年出版社,2014.10:第16頁)
標(biāo)記語言的概念比較復(fù)雜,簡單來說,HTML并不是程序語言(不同于C或Python),只是一種在網(wǎng)頁中顯示資料排版位置的標(biāo)記結(jié)構(gòu)語言。這句話提煉一下就是"標(biāo)記信息在頁面中排版結(jié)構(gòu)的語言"。
如果讀的不太明白,在下一節(jié)"HTML基本框架"中會(huì)對HTML的排版結(jié)構(gòu)規(guī)則進(jìn)行直觀展示,如果您讀不懂可以盡情的跳過,畢竟我們的重點(diǎn)是怎么用。
HTML框架簡單說就是任何HTML網(wǎng)頁文件中都會(huì)包含的基本代碼內(nèi)容。如果我們打算寫一個(gè)頁面,就一定要把框架代碼寫入后才能正式開始添加內(nèi)容。框架代碼如下:
<!DOCTYPE HTML><html> <head> </head> <body> </body> </html>
第一行 <!DOCTYPE HTML>
第二行 <html>
第三行 <head>
第四行 </head>
第五行 <body>
第六行 </body>
第七行 </html>
這七行代碼是所有HTML頁面所共有的,也就是HTML的框架了。不信我們來驗(yàn)證一下。
例子一,頭條的文章頁面(電腦版)網(wǎng)址:https://www.toutiao.com/i6785149184245760516/
筆者使用Firefox(火狐)瀏覽器,輸入網(wǎng)址后點(diǎn)擊鍵盤上的F12,,如圖所示
我們可以看到頁面下半部分出現(xiàn)了一個(gè)調(diào)控臺(tái)。
點(diǎn)擊查看器即可看頁面代碼。代碼如下:
放大一些,大家看看,<!DOCTYPE HTML> <html> <head> </head> <body> </body> </html>這些標(biāo)簽是不是一個(gè)不少,只是中間多了很多內(nèi)容而已。
一個(gè)例子不具有普適性,下面我們再看一個(gè)例子,我隨便找了個(gè)新聞頁面,網(wǎng)址:https://mil.eastday.com/a/200125113254400.html
使用同樣的方法打開查看器看代碼,如圖:
是不是框架中的代碼一個(gè)也不少吧。
所以,大家請?jiān)谧约旱碾娔X中新建一個(gè)txt文件,將HTML框架粘貼到txt文件中,并命名為"HTML框架"。以后我們寫的每一個(gè)頁面都會(huì)從這個(gè)框架開始。
通過對框架中的代碼進(jìn)行觀察,細(xì)心的讀者可能已經(jīng)發(fā)現(xiàn)了HTML這種標(biāo)記語言的書寫規(guī)律。
規(guī)律1:每一個(gè)語句都是包含在<>尖括號內(nèi)的。這是HTML標(biāo)記語言的基本特點(diǎn)之一,大家一定記牢。
規(guī)律2:除了<!DOCTYPE HTML>這個(gè)標(biāo)簽外,其他標(biāo)簽都是成對出現(xiàn)!例如<html>與</html>,<head>與</head>,<body>與</body>。
規(guī)律3:這個(gè)規(guī)律通過觀察代碼也不難發(fā)現(xiàn),即<html></html>兩個(gè)標(biāo)簽中間夾著<head></head>和<body></body>,我們把<head></head>標(biāo)簽稱為<html></html>標(biāo)簽的子標(biāo)簽,反過來<html></html>標(biāo)簽是<head></head>標(biāo)簽的父標(biāo)簽,<head></head>和<body></body>稱為并列關(guān)系或者兄弟關(guān)系。而<!DOCTYPE HTML>是一個(gè)聲明語句,屬于六親不認(rèn)的。
各種關(guān)系如下圖所示:
這樣就回到了之前我們解釋"標(biāo)記語言"的問題上。我們說"標(biāo)記語言"是"標(biāo)記信息在頁面中排版結(jié)構(gòu)的語言",這種父子關(guān)系、兄弟關(guān)系就可以理解為一個(gè)頁面的"結(jié)構(gòu)",這種結(jié)構(gòu)又與頁面的排版有關(guān)。
在下一期中,我們會(huì)通過練習(xí)來解釋"結(jié)構(gòu)"與排版的關(guān)系。
喜歡的小伙伴請加關(guān)注,有任何問題可以留言給我,歡迎指正批評,感激不盡!
HTML序章(學(xué)習(xí)目的、對象、基本概念)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
第一個(gè)HTML頁面如何寫?——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML頁面中head標(biāo)簽有啥用?——零基礎(chǔ)自學(xué)網(wǎng)頁制作
初識(shí)meta標(biāo)簽與SEO——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的元素使用方法1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的元素使用方法2——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML元素中的屬性1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML元素中的屬性2(路徑詳解)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格1(基本元素)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格2(表格頭部與腳部)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格3(間距與顏色)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
使用HTML添加表格4(行顏色與表格嵌套)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
16進(jìn)制顏色表示與RGB色彩模型——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中的塊級元素與內(nèi)聯(lián)元素——零基礎(chǔ)自學(xué)網(wǎng)頁制作
初識(shí)HTML中的<div>塊元素——零基礎(chǔ)自學(xué)網(wǎng)頁制作
在HTML頁面中嵌入其他頁面的方法——零基礎(chǔ)自學(xué)網(wǎng)頁制作
封閉在家學(xué)網(wǎng)頁制作!為頁面嵌入PDF文件——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單元素初識(shí)1——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單元素初識(shí)2——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單3(下拉列表、多行文字輸入)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML表單4(form的action、method屬性)——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML列表制作講解——零基礎(chǔ)自學(xué)網(wǎng)頁制作
為HTML頁面添加視頻、音頻的方法——零基礎(chǔ)自學(xué)網(wǎng)頁制作
音視頻格式轉(zhuǎn)換神器與html視頻元素加字幕——零基礎(chǔ)自學(xué)網(wǎng)頁制作
HTML中使用<a>標(biāo)簽實(shí)現(xiàn)文本內(nèi)鏈接——零基礎(chǔ)自學(xué)網(wǎng)頁制作
*請認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。