.用正確的標(biāo)簽做正確的事情。
2.html語義化讓頁面的內(nèi)容結(jié)構(gòu)化,結(jié)構(gòu)更清晰,便于對瀏覽器、搜索引擎解析;
3.即使在沒有樣式CSS情況下也以一種文檔格式顯示,并且是容易閱讀的;
4.搜索引擎的爬蟲也依賴于HTML標(biāo)記來確定上下文和各個關(guān)鍵字的權(quán)重,利于SEO;
5.使閱讀源代碼的人對網(wǎng)站更容易將網(wǎng)站分塊,便于閱讀維護(hù)理解。
簡單例子:以前大部分都是div和span
<body> <div id="header">...</div> <div id="nav"><span>...</span></div> <div class="artical"> <div class="section"></div> </div> <div id="side-bar"><span>...</span></div> <div id="footer">...</div> </body>
現(xiàn)在HTML5之后,好多了:article、footer、header、nav、section。
<body> <header>...</header> <nav>...</nav> <article> <section> ... </section> </article> <aside>...</aside> <footer>...</footer> </body>
布局效果:
義化標(biāo)簽還有<header>(頭部)、<nav>(導(dǎo)航)、<main>(主要區(qū)域)、<article>(主要內(nèi)容)、<section>(區(qū)塊)、<aside>(側(cè)邊欄)和<footer>(底部)等。
語義化優(yōu)點(diǎn):
如果沒有defer或async屬性,瀏覽器會立即加載并執(zhí)行相應(yīng)的腳本。它不會等待后續(xù)加載的文檔元素,讀取到就會開始加載和執(zhí)行,這樣就阻塞了后續(xù)文檔的加載。
下圖可以直觀的看出三者之間的區(qū)別:
其中藍(lán)色代表js腳本網(wǎng)絡(luò)加載時間,紅色代表js腳本執(zhí)行時間,綠色代表html解析時間。
defer 和 async屬性都是去異步加載外部的JS腳本文件,它們都不會阻塞頁面的解析,其區(qū)別如下:
在網(wǎng)頁HTML的頂部,會發(fā)現(xiàn)頂部有一個<!DOCTYPE html>聲明,所有處于標(biāo)簽之前,它不是html標(biāo)簽。主要作用是告訴瀏覽器的解析器使用哪種HTML規(guī)范或者XHTML規(guī)范來解析頁面。
如果不寫文檔DOCTYPE聲明,瀏覽器將無法獲知HTML或XHTML文檔的類型,也會進(jìn)入怪異模式,那么,在不同的瀏覽器下,顯示的樣式效果會不一致;相反,瀏覽器按照W3C標(biāo)準(zhǔn)來解析代碼,呈現(xiàn)頁面。
<meta> 標(biāo)簽由 name 和 content 屬性定義,用來描述網(wǎng)頁文檔的屬性,比如文章作者、關(guān)鍵詞等。常用的meta標(biāo)簽:
對于viewport中的值,有下列選項:
對接下來很多應(yīng)屆生面臨找工作面試的問題,我將會總結(jié)一些前端面試常見的問題和大家分享。希望能幫助到即將進(jìn)入職場的同學(xué)們。話不多說,我們開始吧。
1、用正確的標(biāo)簽做正確的事情。
2、使閱讀源代碼的人對網(wǎng)站更容易將網(wǎng)站分塊,便于閱讀維護(hù)理解。
3、即使在沒有樣式CSS情況下也以一種文檔格式顯示,并且是容易閱讀的;
4、html語義化讓頁面的內(nèi)容結(jié)構(gòu)化,結(jié)構(gòu)更清晰,便于對瀏覽器、搜索引擎解析;
5、搜索引擎的爬蟲也依賴于HTML標(biāo)記來確定上下文和各個關(guān)鍵字的權(quán)重,利于SEO;
歡迎你給我留言~
*請認(rèn)真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。