前端開發入門到實戰:HTML5新增和廢棄的標籤

智雲程式設計發表於2019-07-13

一、廢棄的標籤

以下的 HTML 4.01 元素在HTML5中已經被刪除,雖然瀏覽器為了相容性考慮都還支援這些標籤,但建議使用新的替代標籤,矛盾的是老瀏覽器對新標籤的支援度又不夠,視專案的受眾物件而定了。

1、能用CSS代替的元素

這些元素包含basefont、big、center、font、s、strike、tt、u。這些元素純粹是為頁面展示用的,表現的內容應該由CSS完成。

2、frame框架

這些元素包含frameset、frame、noframes。HTML5中不支援frame框架,只支援iframe框架,或者用伺服器方建立的由多個頁面組成的符合頁面的形式,刪除以上這三個標籤。

3、只有部分瀏覽器支援的元素

這些元素包含applet、bgsound、blink、marquee等標籤。

4、其他被廢除的元素

廢除rb,使用ruby替代廢除acronym使用abbr替代廢除dir使用ul替代廢除isindex使用form與input相結合的方式替代廢除listing使用pre替代廢除xmp使用code替代廢除nextid使用guids廢除plaintex使用“text/plian”(無格式正文)MIME型別替代

二、新增的標籤

1、新增的結構標籤

在HTML4.01中div被廣泛用於各種佈局環境在,沒有明確的定義,HTML5為了SEO將div語義化了,新增加結構標籤如下:

a)、section元素  表示頁面中的一個內容區塊,比如章節、頁首、頁尾或頁面的其他部分。可以和h1、 h2……等元素結合起來使用,表示文件結構。例:HTML5中<section>……</section>;HTML4中<div> ……</div>。

b)、article元素  表示頁面中一塊與上下文不相關的獨立內容。比如一篇文章。

c)、aside元素  表示article元素內容之外的、與article元素內容相關的輔助資訊。

d)、header元素  表示頁面中一個內容區塊或真個頁面的標題。

e)、hgroup元素  表示對真個頁面或頁面中的一個內容區塊的標題進行組合。

f)、footer元素  表示整個頁面或頁面中一個內容區塊的腳註。一般來說,他會包含創作者的姓名、創作日期以及創作者的聯絡資訊。

g)、nav元素  表示頁面中導航連結的部分。

h)、figure元素  表示一段獨立的流內容,一般表示文件主體流內容中的一個獨立單元。使用figcaption元素為figure元素組新增標題。例如:

<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>

為了幫助大家讓學習變得輕鬆、高效,給大家免費分享一大批資料,幫助大家在成為前端工程師,乃至全棧工程師的路上披荊斬棘。在這裡給大家推薦一個前端全棧學習交流圈:784783012 歡迎大家學習交流,共同進步。
當真正開始學習的時候難免不知道從哪入手,導致效率低下影響繼續學習的信心。
但最重要的是不知道哪些技術需要重點掌握,學習時頻繁踩坑,最終浪費大量時間,所以有效資源還是很有必要的。

2、新增加其它元素

2.1、meter

表示特定範圍內的數值,可用於工資、數量、百分比等 max表示最大值,min表示最小值,value代表當前值。

<meter max="100" min="0" value="60" style="width: 300px;"></meter>

可以用js控制讓它從0變化到100。

2.2、time

time。表示時間值,屬性datetime強調時間大會時間:<time>2015-10-6</time>

因為該標籤是一個語義標籤,在瀏覽器上檢視時沒有特別的效果,基本與沒有設定標籤的效果相同。

2.3、progress

用來表示進度條

<h3>progress</h3>
<progress value="75" max="100"></progress>

max:最大值,完成時的值

value:當前值

2.4、datalist

該標籤定義可選資料的列表。與 input 元素配合使用,就可以製作出輸入值的下拉選單。當與input組合時既可以完成選擇有可以輸入。

<input type="text" list="countries" />
<datalist id="countries">
    <option value="中國"></option>
    <option value="美國"></option>
    <option value="日本"></option>
</datalist>

2.5、mark元素

主要用來在視覺上向使用者呈現哪些需要突出顯示或高亮顯示的文字。典型應用搜尋結果中高亮顯示搜素關鍵字。 HTML5<mark></mark>;HTML4 <span></span>。

2.6、ruby元素

定義 ruby 註釋(中文注音或字元)。 與 <ruby> 以及 <rt> 標籤一同使用。ruby 元素由一個或多個字元(需要一個解釋/發音)和一個提供該資訊的 rt 元素組成,還包括可選的 rp 元素,定義當瀏覽器不支援 "ruby" 元素時顯示的內容。

2.7、rt元素

定義字元(中文注音或字元)的解釋或發音。

2.8、rp元素

在 ruby 註釋中使用,以定義不支援 ruby 元素的瀏覽器所顯示的內容。

2.9、wbr元素

表示軟換行。與br元素的區別:br元素表示此處必須換行;wbr表示瀏覽器視窗或父級元素足弓寬時(沒必要換行時),不換行,而寬度不夠時主動在此處換行。

2.10、canvas元素

定義圖形,比如圖表和其他影像。<canvas> 元素只是圖形容器(畫布),必須使用指令碼來繪製圖形。

<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>

2.11、command元素

表示命令按鈕,比如單選按鈕、核取方塊或按鈕。只有當 command 元素位於 menu 元素內時,該元素才是可見的。否則不會顯示這個元素,但是可以用它規定鍵盤快捷鍵。

<menu> 
<command onclick="alert('Hello World')"> Click Me!</command> 
</menu>

2.12、details標籤

用於描述文件或文件某個部分的細節 。 可與 summary 標籤配合使用,summary可以為 details 定義標題。標題是可見的,使用者點選標題時,會顯示出 details。summary應該是details的第一個子元素。

2.14、datalist標籤

定義選項列表。請與 input 元素配合使用該元素,來定義 input 可能的值。datalist 及其選項不會被顯示出來,它僅僅是合法的輸入值列表。使用 input 元素的 list 屬性來繫結 datalist。

2.15、output標籤

定義不同型別的輸出,比如指令碼的輸出。

<form action="form_action.asp" method="get" name="sumform"> 
<output name="sum"></output> 
</form>

2.16、menu標籤

定義選單列表。當希望列出表單控制元件時使用該標籤。注意與nav的區別,menu專門用於表單控制元件。

3、多媒體標籤

如果需要在頁面中播放音訊與影片我們經常會用使用的方法有:

a)、embed

<embed src='
<embed src="img/iceage4.mp4"></embed>

b)、使用flash播放器

如一些三方外掛,flowplayer602

html5多媒體元件指的是video(影片)元件和audio(音訊)元件。HTML5多媒體元件可以在不借助諸如Flash Player等第三方外掛的情況下,直接在你的網頁上嵌入多媒體元件。瀏覽器提供原生支援影片的新能力使得網頁開發人員更易於在不依賴於外接外掛有效性的情況下,在他們的網站上新增影片元件。由於蘋果公司現階段在iPhone和iPad上使用的Flash技術的侷限性,HTML5多媒體元件的能力就顯得尤為重要了。

3.1、video影片標籤

用於在播放影片,電影,標籤基本格式如下:

<video width="800" height="600" controls="controls" poster="content/1.jpg">
    <source src="content/iceage4.mp4" type="video/mp4"></source>
    <source src="content/iceage4.webm" type="video/webm"></source>
    <object width="" height="" type="application/x-shockwave-flash" data="myvideo.swf">
        <param name="movie" value="myvideo.swf" />
        <param name="flashvars" value="autostart=true&file=myvideo.swf" />
    </object>
    當前瀏覽器不支援 video直接播放,點選這裡下載影片: <a href="a.mp4">下載影片</a>
</video>

source是影片源,可以有多種,當一種失敗時將選擇下一種,主要有如下3種:

Ogg = 帶有 Theora 影片編碼和 Vorbis 音訊編碼的 Ogg 檔案MPEG4 = 帶有 H.264 影片編碼和 AAC 音訊編碼的 MPEG 4 檔案WebM = 帶有 VP8 影片編碼和 Vorbis 音訊編碼的 WebM 檔案

注意:

<video src="img/a.mp4" controls="controls" poster="img/1.jpg">
您的瀏覽器太老了,請升級,影片下載<a href="#">地址</a>
</video>

多數的HTML5標籤的innerHTML內容是瀏覽器不支援該標籤時顯示的內容。

事件繫結與監聽的區別:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>事件繫結與監聽的區別</title>
    </head>
    <body>
        <button id="btnA">按鈕A</button>
        <button id="btnB">按鈕B</button>
        <script type="text/javascript">
            var btnA = document.getElementById("btnA");
            var btnB = document.getElementById("btnB");
            btnA.onclick = function() {
                alert("你點了一下");
            }
            btnA.onclick = function() {
                alert("你又點了一下");
            }
            btnB.addEventListener("click",function(event){
                alert("你點了一下");
            },false);
            btnB.addEventListener("click",function(event){
                alert("你又點了一下");
            },false);
        </script>
    </body>
</html>

使用on事件名的形式繫結事件後繫結會覆蓋前面繫結的事件,也就是最後一個繫結的事件會生效;

使用addEventListener繫結事件則不會覆蓋,可同時在一個元素上繫結多個相同的事件。

video API的屬性與事件示例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Video 標籤</title>
    </head>
    <body>
        <video id="videoIce" width="800" height="600" controls="controls" poster="content/1.jpg">
            <source src="content/iceage4.mp4" type="video/mp4"></source>
            <source src="content/iceage4.webm" type="video/webm"></source>
            <object width="" height="" type="application/x-shockwave-flash" data="myvideo.swf">
                <param name="movie" value="myvideo.swf" />
                <param name="flashvars" value="autostart=true&file=myvideo.swf" />
            </object> 當前瀏覽器不支援 video直接播放,點選這裡下載影片:
            <a href="content/a.mp4">下載影片</a>
        </video>
        <h2>
            <button onclick="play()">播放</button>
            <button onclick="pause()">暫停</button>
            <span id="msg"></span>
        </h2>
        <script type="text/javascript">
           var videoIce=document.getElementById("videoIce");
            function play() {
                videoIce.play();
            }
            function pause() {
                videoIce.pause();
            }
            videoIce.ontimeupdate = function() {
                document.getElementById("msg").innerHTML=videoIce.currentTime;
            }
        </script>
    </body>
</html>

3.2、audio音訊標籤

audio可以實現播放聲音,音樂功能。

<audio src=您的瀏覽器不支援audio元素</autio>
<audio src="content/a.mp3" controls="controls" autoplay="autoplay"></audio>

audio標籤的屬性,很多屬性都是與video相同的:

autoplay:true|false,如果是 true,則音訊在就緒後馬上播放。 controls:true|false 如果是true,則向使用者顯示控制元件,比如播放按鈕。 end:numeric value 定義播放器在音訊流中的何處停止播放。預設地,聲音會播放到結尾。 loopend:numeric value 定義在音訊流中迴圈播放停止的位置,預設是 end 屬性的值。 loopstart: numeric value 定義在音訊流中迴圈播放的開始位置。預設是 start 屬性的值。 playcount: numeric value 定義音訊片斷播放多少次。預設是 1。 src: url 所播放音訊的 url。 start : numeric value 定義播放器在音訊流中開始播放的位置。預設地,聲音在開頭進行播放。

source子標籤

使用source元素作為多媒體元素的子標籤例:

<audio>
<source src='test.mp3’ type='audio/mpeg'/>
<source src='test.ogg’ type='audio/ogg'/>
<source src='test.spx’ type='audio/ogg'/>
</audio>

使用source元素,瀏覽器在列表順序查詢,直到找到一個它能播放的檔案格式,找到後,就播放該檔案並忽略隨後的其它元素。

audio的API與video基本一樣,下面是一個自定義調整音量的示例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>audio標籤</title>
    </head>
    <body>
        <h2>audio標籤</h2>
        <audio src="content/fcml.mp3" controls="controls" autoplay="autoplay" id="mp3">
            <marquee><h2>換個瀏覽器吧,太老了</h2></marquee>
        </audio>
        <input type="range" min="0" max="100" onchange="setVolume(this)" />  
        <script type="text/javascript">
            function setVolume(obj){
                document.getElementById("mp3").volume=obj.value*0.01;
            }
        </script>
    </body>
</html>

音量只在0-1之間。

3.3、embed元素

用來嵌入內容(包括各種媒體)。格式可以是Midi、Wav、AIFF、AU、MP3,flash等。

例:<embed src="flash.swf" /> HTML4中程式碼示例<object data="flash.swf" type="application/x-shockwave-flash"><object>


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901074/viewspace-2650439/,如需轉載,請註明出處,否則將追究法律責任。

相關文章