使用DIV+CSS布局時(shí),我們需要通過(guò)為div命名的方式,來(lái)區(qū)分網(wǎng)頁(yè)中不同的模塊。在HTML5中布局方式有了新的變化,HTML5中增加了新的結(jié)構(gòu)標(biāo)簽,如header標(biāo)簽、nav標(biāo)簽、article標(biāo)簽等,具體介紹如下。
1. header標(biāo)簽
HTML5中的header標(biāo)簽是一種具有引導(dǎo)和導(dǎo)航作用的結(jié)構(gòu)標(biāo)簽,該標(biāo)簽可以包含所有通常放在頁(yè)面頭部的內(nèi)容。header標(biāo)簽通常用來(lái)放置整個(gè)頁(yè)面或頁(yè)面內(nèi)的一個(gè)內(nèi)容區(qū)塊的標(biāo)題,也可以包含網(wǎng)站Logo圖片、搜索表單或者其他相關(guān)內(nèi)容。其基本語(yǔ)法格式如下:
<header>
<h1>網(wǎng)頁(yè)主題</h1>
...
</header>
在上面的語(yǔ)法格式中,<header></header>的使用方法和<div class="header"></div>類似。
注意:
在HTML網(wǎng)頁(yè)中,并不限制header標(biāo)簽的個(gè)數(shù),一個(gè)網(wǎng)頁(yè)中可以使用多個(gè)header標(biāo)簽,也可以為每一個(gè)內(nèi)容塊添加header標(biāo)簽。
2. nav標(biāo)簽
nav標(biāo)簽用于定義導(dǎo)航鏈接,是HTML5新增的標(biāo)簽,該標(biāo)簽可以將具有導(dǎo)航性質(zhì)的鏈接歸納在一個(gè)區(qū)域中,使頁(yè)面元素的語(yǔ)義更加明確。nav標(biāo)簽的使用方法和普通標(biāo)簽類似,例如下面這段示例代碼:
<nav>
<ul>
<li><a href="#">首頁(yè)</li>
<li><a href="#">公司概況</li>
<li><a href="#">產(chǎn)品展示</li>
<li><a href="#">聯(lián)系我們</li>
</ul></nav>
在上面這段代碼中,通過(guò)在nav標(biāo)簽內(nèi)部嵌套無(wú)序列表ul來(lái)搭建導(dǎo)航結(jié)構(gòu)。通常一個(gè)HTML頁(yè)面中可以包含多個(gè)nav標(biāo)簽,作為頁(yè)面整體或不同部分的導(dǎo)航。具體來(lái)說(shuō),nav標(biāo)簽可以用于以下幾種場(chǎng)合。
● 傳統(tǒng)導(dǎo)航條:目前主流網(wǎng)站上都有不同層級(jí)的導(dǎo)航條,其作用是跳轉(zhuǎn)到網(wǎng)站的其他主頁(yè)面。
● 側(cè)邊欄導(dǎo)航:目前主流博客網(wǎng)站及電商網(wǎng)站都有側(cè)邊欄導(dǎo)航,目的是將當(dāng)前文章或當(dāng)前商品頁(yè)面跳轉(zhuǎn)到其他文章或其他商品頁(yè)面。
● 頁(yè)內(nèi)導(dǎo)航:它的作用是在本頁(yè)面幾個(gè)主要的組成部分之間進(jìn)行跳轉(zhuǎn)。
● 翻頁(yè)操作:翻頁(yè)操作切換的是網(wǎng)頁(yè)的內(nèi)容部分,可以通過(guò)點(diǎn)擊“上一頁(yè)”或“下一頁(yè)”切換,也可以通過(guò)點(diǎn)擊實(shí)際的頁(yè)數(shù)跳轉(zhuǎn)到某一頁(yè)。
除了以上幾點(diǎn)以外,nav標(biāo)簽也可以用于其他導(dǎo)航鏈接組中。需要注意的是,并不是所有的鏈接組都要被放進(jìn)nav標(biāo)簽,只需要將主要的和基本的鏈接放進(jìn)nav標(biāo)簽即可。
3. footer標(biāo)簽
footer標(biāo)簽用于定義一個(gè)頁(yè)面或者區(qū)域的底部,它可以包含所有放在頁(yè)面底部的內(nèi)容。在HTML5出現(xiàn)之前,一般使用<div class="footer"></div>標(biāo)簽來(lái)定義頁(yè)面底部,而現(xiàn)在通過(guò)HTML5的footer標(biāo)簽可以輕松實(shí)現(xiàn)。與header標(biāo)簽相同,一個(gè)頁(yè)面中可以包含多個(gè)footer標(biāo)簽。
4. article標(biāo)簽
article標(biāo)簽代表文檔、頁(yè)面或者應(yīng)用程序中與上下文不相關(guān)的獨(dú)立部分,該元素經(jīng)常被用于定義一篇日志、一條新聞或用戶評(píng)論等。一個(gè)article標(biāo)簽通常有它自己的標(biāo)題(可以放在header標(biāo)簽中)和腳注(可以放在footer標(biāo)簽中),例如下面的示例代碼。
<article>
<header>
<h1>秋天的味道</h1>
<p>你想不想知道秋天的味道?它是甜、是苦、是澀...</p>
</header>
<footer>
<p>著作權(quán)歸XXXXXX公司所有...</p>
</footer></article>
需要注意的,在上面的示例代碼中還缺少主體內(nèi)容。主體內(nèi)容通常會(huì)寫在header和footer之間,通過(guò)多個(gè)section標(biāo)簽進(jìn)行劃分。一個(gè)頁(yè)面中可以出現(xiàn)多個(gè)article標(biāo)簽,并且article標(biāo)簽可以嵌套使用。
5. section標(biāo)簽
section標(biāo)簽表示一段專題性的內(nèi)容,一般會(huì)帶有標(biāo)題,主要應(yīng)用在文章的章節(jié)中。例如,新聞的詳情頁(yè)有一篇文章,該文章有自己的標(biāo)題和內(nèi)容,因此可以使用article標(biāo)簽標(biāo)注,如果該新聞內(nèi)容太長(zhǎng),分好多段落,每段都有自己的小標(biāo)題,這時(shí)候就可以使用section標(biāo)簽把段落標(biāo)注起來(lái)。在使用section標(biāo)簽時(shí),需要注意以下幾點(diǎn):
● section不僅僅是一個(gè)普通的容器標(biāo)簽。當(dāng)一個(gè)標(biāo)簽只是為了樣式化或者方便腳本使用時(shí),應(yīng)該使用div標(biāo)簽。
如果article標(biāo)簽、aside標(biāo)簽或nav標(biāo)簽更符合使用條件,那么不要使用section標(biāo)簽。
● 沒有標(biāo)題的內(nèi)容模塊不要使用section標(biāo)簽定義。
值得一提的是,在HTML5中,article標(biāo)簽可以看作是一種特殊的section標(biāo)簽,它比section標(biāo)簽更具有獨(dú)立性,即section標(biāo)簽強(qiáng)調(diào)分段或分塊,而article標(biāo)簽強(qiáng)調(diào)獨(dú)立性。如果一塊內(nèi)容相對(duì)來(lái)說(shuō)比較獨(dú)立、完整時(shí),應(yīng)該使用article標(biāo)簽;但是如果想要將一塊內(nèi)容分成多段時(shí),應(yīng)該使用section標(biāo)簽。
6. aside標(biāo)簽
aside標(biāo)簽用來(lái)定義當(dāng)前頁(yè)面或者文章的附屬信息部分,它可以包含與當(dāng)前頁(yè)面或主要內(nèi)容相關(guān)的引用、側(cè)邊欄、廣告、導(dǎo)航條等有別于主要內(nèi)容的部分。aside標(biāo)簽的用法主要分為兩種:
● 被包含在article標(biāo)簽內(nèi)作為主要內(nèi)容的附屬信息。
● 在article標(biāo)簽之外使用,作為頁(yè)面或網(wǎng)站的附屬信息部分。最常用的的使用形式是側(cè)邊欄。
增的結(jié)構(gòu)標(biāo)簽
section元素
表示頁(yè)面中的一個(gè)內(nèi)容區(qū)塊,比如章節(jié)、頁(yè)眉、頁(yè)腳或頁(yè)面的其他部分。可以和h1、 h2...等元素結(jié)合起來(lái)使用,表示文檔結(jié)構(gòu)。
例:HTML5中<section>...</section>;HTML4中<div>...</div>。
article元素
表示頁(yè)面中一塊與上下文不相關(guān)的獨(dú)立內(nèi)容。比如一篇文章。
aside元素
表示article元素內(nèi)容之外的、與article元素內(nèi)容相關(guān)的輔助信息。
header元素
表示頁(yè)面中一個(gè)內(nèi)容區(qū)塊或真?zhèn)€頁(yè)面的標(biāo)題。
hgroup元素
表示對(duì)真?zhèn)€頁(yè)面或頁(yè)面中的一個(gè)內(nèi)容區(qū)塊的標(biāo)題進(jìn)行組合。
footer元素
表示整個(gè)頁(yè)面或頁(yè)面中一個(gè)內(nèi)容區(qū)塊的腳注。一般來(lái)說(shuō),他會(huì)包含創(chuàng)作者的姓名、創(chuàng)作日期以及創(chuàng)作者的聯(lián)系信息。
nav元素
表示頁(yè)面中導(dǎo)航鏈接的部分。
figure元素
表示一段獨(dú)立的流內(nèi)容,一般表示文檔主體流內(nèi)容中的一個(gè)獨(dú)立單元。使用figcaption元素為figure元素組添加標(biāo)題。
figure 定義媒介內(nèi)容的分組, 以及它們的標(biāo)題。
figcaption 定義 figure 元素的標(biāo)題。
例如:
<figure>
<figcaption>PRC</figcaption>
<p>The People's Republic of China was born in 1949</p>
</figure>
HTML4中常寫作
<dl>
<h1>prc</h1>
<p>The People's Republic of China was born in 1949</p>
</dl>
新增的其他元素
video元素
定義視頻。像電影片段或其他視頻流。例:
<video src="movie.ogg" controls="controls">video元素</video>
HTML4中寫法:
<object type="video/ogg" data="move.ogv">
<param name ="src" value="movie.ogv">
</object>
audio元素
定義音頻。如音樂(lè)或其他音頻流。例:
<audio src ="someaudio.wav">audio元素</audio>
html4中寫法:
<object tyle="application/ogg" data="someaudio.wav">
<param name ="src" value= "someaudio.wav">
</object>
embed元素
用來(lái)嵌入內(nèi)容(包括各種媒體)。格式可以是Midi、Wav、AIFF、AU、MP3,flash等。例:<embed src="flash.swf" />
HTML4中代碼示例<object data="flash.swf" type="application/x-shockwave-flash"><object>
mark元素
主要用來(lái)在視覺上向用戶呈現(xiàn)哪些需要突出顯示或高亮顯示的文字。典型應(yīng)用搜索結(jié)果中高亮顯示搜素關(guān)鍵字。
HTML5<mark></mark>;HTML4 <span></span>。
progress元素
表示運(yùn)行中的進(jìn)程,可以使用progress元素顯示JavaScript中耗時(shí)時(shí)間函數(shù)的進(jìn)程。等待中……、請(qǐng)稍后等。<progress></progress>。
time元素
表示日期或時(shí)間,也可以兩者同時(shí)。
ruby元素
定義 ruby 注釋(中文注音或字符)。
與 <ruby> 以及 <rt> 標(biāo)簽一同使用。ruby 元素由一個(gè)或多個(gè)字符(需要一個(gè)解釋/發(fā)音)和一個(gè)提供該信息的 rt 元素組成,
還包括可選的 rp 元素,定義當(dāng)瀏覽器不支持 "ruby" 元素時(shí)顯示的內(nèi)容。
<ruby>
漢朝<rt><rp>(</rp>西漢和東漢<rp>)</rp></rt>
</ruby>
rt元素
定義字符(中文注音或字符)的解釋或發(fā)音。
rp元素
在 ruby 注釋中使用, 以定義不支持 ruby 元素的瀏覽器所顯示的內(nèi)容。
wbr元素
表示軟換行。與br元素的區(qū)別:br元素表示此處必須換行;wbr表示瀏覽器窗口或父級(jí)元素足弓寬時(shí)(沒必要換行時(shí)),
不換行,而寬度不夠時(shí)主動(dòng)在此處換行。
canvas元素
定義圖形,比如圖表和其他圖像。<canvas> 元素只是圖形容器(畫布),必須使用腳本來(lái)繪制圖形。
<canvas id="myCanvas"></canvas>
<script type="text/javascript">
var canvas=document.getElementById('myCanvas');
var ctx=canvas.getContext('2d');
ctx.fillStyle='#FF0000';
ctx.fillRect(0,0,80,100);
</script>
command元素 各版本瀏覽器支持有問(wèn)題
表示命令按鈕,比如單選按鈕、復(fù)選框或按鈕。
只有當(dāng) command 元素位于 menu 元素內(nèi)時(shí),該元素才是可見的。否則不會(huì)顯示這個(gè)元素,但是可以用它規(guī)定鍵盤快捷鍵。。
<menu>
<command onclick="alert('Hello World')">
Click Me!</command>
</menu>
details標(biāo)簽
用于描述文檔或文檔某個(gè)部分的細(xì)節(jié) 。
可與 summary 標(biāo)簽配合使用,summary可以為 details 定義標(biāo)題。
標(biāo)題是可見的,用戶點(diǎn)擊標(biāo)題時(shí),會(huì)顯示出 details。summary應(yīng)該是details的第一個(gè)子元素。
<details>
<summary>迪麗熱巴</summary>
<p>迪麗熱巴(Dilraba),1992年6月3日出生于新疆烏魯木齊市,中國(guó)內(nèi)地影視女演員。</p>
</details>
fieldset標(biāo)簽
組合表單中的相關(guān)元素
fieldset 標(biāo)簽用于從邏輯上將表單中的元素組合起來(lái)。
legend 標(biāo)簽為 fieldset 元素定義標(biāo)題。
<form>
<fieldset>
<legend>健康信息</legend>
身高:<input type="text" />
體重:<input type="text" />
</fieldset>
</form>
datalist標(biāo)簽
定義選項(xiàng)列表。請(qǐng)與 input 元素配合使用該元素,來(lái)定義 input 可能的值。
datalist 及其選項(xiàng)不會(huì)被顯示出來(lái),它僅僅是合法的輸入值列表。使用 input 元素的 list 屬性來(lái)綁定 datalist。
<input id="myCar" list="cars" />
<datalist id="cars">
<option value="BMW">
<option value="Ford">
<option value="Volvo">
</datalist>
datagrid標(biāo)簽 如何用?
定義可選數(shù)據(jù)的列表。datagrid 作為樹列表來(lái)顯示。
如果把 multiple 屬性設(shè)置為 true,則可以在列表中選取一個(gè)以上的項(xiàng)目。
keygen標(biāo)簽 如何用?
標(biāo)簽規(guī)定用于表單的密鑰對(duì)生成器字段。
當(dāng)提交表單時(shí),私鑰存儲(chǔ)在本地,公鑰發(fā)送到服務(wù)器。
<form action="demo_keygen.asp" method="get">
Username: <input type="text" name="usr_name" />
Encryption: <keygen name="security" />
<input type="submit" />
</form>
output標(biāo)簽
定義不同類型的輸出,比如腳本的輸出。
<form action="form_action.asp" method="get" name="sumform">
<output name="sum"></output>
</form>
source標(biāo)簽
標(biāo)簽為媒介元素(比如 <video> 和 <audio>)定義媒介資源。
menu標(biāo)簽
定義菜單列表。當(dāng)希望列出表單控件時(shí)使用該標(biāo)簽。注意與nav的區(qū)別,menu專門用于表單控件。
<menu>
<li><input type="checkbox" />Red</li>
<li><input type="checkbox" />blue</li>
</menu>
abbr: 標(biāo)記一個(gè)縮寫
The <abbr title="People's Republic of China">PRC</abbr> was founded in 1949.
顯示結(jié)果
The PRC was founded in 1949.
mark標(biāo)簽
定義有記號(hào)的文本。
<mark>有記號(hào)的文本</mark>
progress 定義任何類型的任務(wù)的進(jìn)度。
<progress min="0" max="100" value="60"></progress>
們都知道,想要成為一名合格的前端開發(fā)人員,掌握好HTML5是一個(gè)重要的先決條件,相比較于HTML,HTML5中新增了許多功能標(biāo)簽,那么這么標(biāo)簽都有哪些呢?
青島HTML5
格式:
<bdi>定義文本的文本方向,使其脫離其周圍文本的方向設(shè)置。
<mark>定義有記號(hào)的文本。
<meter>定義預(yù)定義范圍內(nèi)的度量。
<progress>定義任何類型的任務(wù)的進(jìn)度。
<rp>定義若瀏覽器不支持 ruby 元素顯示的內(nèi)容。
<rt>定義 ruby 注釋的解釋。
<ruby>定義 ruby 注釋。
<time>定義日期/時(shí)間。
<wbr>定義可能的換行符。
表單:
<datalist>定義下拉列表。
<keygen>定義生成密鑰。
<output>定義輸出的一些類型。
圖像:
<canvas>定義圖形。
<figcaption>定義 figure 元素的標(biāo)題。
<figure>定義媒介內(nèi)容的分組,以及它們的標(biāo)題。
音頻和視頻:
<audio>定義聲音內(nèi)容。
<source>定義媒介源。
<track>定義用在媒體播放器中的文本軌道。
<video>定義視頻。
鏈接:
nav>定義導(dǎo)航鏈接。
列表:
<command>定義命令按鈕。
樣式:
<header>定義section或page的頁(yè)眉。
<footer>定義section或page的頁(yè)腳。
<section>定義section。
<article>定義文章。
<aside>定義頁(yè)面內(nèi)容之外的內(nèi)容。
<details>定義元素的細(xì)節(jié)。
<dialog定義對(duì)話框或窗口。
<summary>為 <details> 元素定義可見的標(biāo)題。
編程:
<embed>為外部應(yīng)用程序(非HTML)定義容器。
HTML5的優(yōu)勢(shì):
1、做出更多好看的動(dòng)畫效果,讓前端開發(fā)人員實(shí)現(xiàn)更好的頁(yè)面交互
HTML5實(shí)現(xiàn)的網(wǎng)頁(yè)更加的精美,這些動(dòng)畫是基于HTML5標(biāo)簽和CSS3樣式共同實(shí)現(xiàn)的效果。
2、解決了跨瀏覽器問(wèn)題
跨瀏覽器問(wèn)題在HTML5出現(xiàn)之前,對(duì)于前端開發(fā)人員來(lái)說(shuō),絕對(duì)是一個(gè)噩夢(mèng)級(jí)的問(wèn)題。明明在一個(gè)瀏覽器中完全正常運(yùn)行的HTML、CSS和JavaScript頁(yè)面,但換一個(gè)瀏覽器之后,就會(huì)出現(xiàn)很多問(wèn)題,比如:JavaScript運(yùn)行出錯(cuò)、頁(yè)面布局混亂等。改變了這種局面的正是HTML5編程語(yǔ)言,目前主流瀏覽器如Internet Explorer、Chorme、Firefox、Safari都表現(xiàn)出對(duì)HTML5的極大熱情。
3、跨平臺(tái)、離線使用
HTML5 可以做到跨平臺(tái),多數(shù)核心代碼不用重寫,JavaScript的代碼用得好的話,在許多地方都可以用到,包括移動(dòng)應(yīng)用、移動(dòng)網(wǎng)站、PC網(wǎng)站、各種瀏覽器插件,甚至可以用WebKit封裝作為跨平臺(tái)的應(yīng)用程序。雖然這種方式在嚴(yán)格意義上來(lái)講并非是完全跨平臺(tái),但這樣也在后期的維護(hù)上可以節(jié)省出量的時(shí)間和精力。
用戶可以離線使用、訪問(wèn)應(yīng)用,這對(duì)于無(wú)法隨時(shí)保持聯(lián)網(wǎng)狀態(tài)的移動(dòng)終端用戶來(lái)說(shuō)是很重要的,且用戶訪問(wèn)本地的緩存文件,通常意味著更快的訪問(wèn)速度,從這個(gè)角度來(lái)說(shuō),可謂是大大提高了用戶的體驗(yàn)度。
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。