HTML5 新標籤

1.1 HTML 5 新元素

  • Header - 可表示介紹內容的容器,或者一組導航鏈接。
  • Nav - 標籤的內容主要用於導航。
  • Article - 標識頁面中的主體內容。以博客爲例,每個帖子都是一個重要內容,可採用 Article 標識每一個帖子。
  • Section - 用於標記頁面上的重要的部分。該標記類似於將文檔分爲多個章節。
  • Aside - 表示和頁面主要內容有關,但不是頁面的一部分,經常表示一個相關鏈接。
  • Footer - 和 Header 相對,表示文檔或者章節的頁腳,比如版權信息放在此標記中。

傳統 DIV 方式佈局

<body>
    <!-- 頁頭 -->
    <div class='header'></header> 
    <!-- 導航 -->
    <div class='nav'></div>
    <!-- 主體內容 -->
    <div class='main'>
        <!-- 文章 -->
        <div class='article'>
            <!-- 節 -->
            <div class='section'></div>
        </div>
        <!-- 邊欄 -->
        <div class='sidebar'></div>
    </div>
    <!-- 頁腳 -->
    <div class='footer'></div>
</body>

使用 HTML 5 新元素實現佈局

<body>
    <header></header>
    <nav></nav>
    <div>
        <article>
            <section></section>
        </article>
        <aside></aside>
    </div>
    <footer></footer>
</body>

1.2 表單的增強應用

在 HTML 4 中,提供了一些簡單的表單元素應對基本輸入。對於特定類型的輸入,比如日期時間的輸入,交互體驗無法滿足需求。因此,爲了得到更好的效果,只能使用 javascript 編寫組件實現。在 HTML 5 中得到了完善,增加了新的表單元素來提供更多的輸入類型。

(1)Input 的 Type 屬性擴充

  • search - 呈現一個搜索框。
  • tel - 輸入電話號碼,可以採用 pattern 和 maxlength 來限定輸入合適
<input type='tel' name='tel' value="" placeholder="請輸入手機號碼" pattern='1[3-8][0-9]{9}' title='請輸入11位手機號'>
  • url - 輸入 URL 地址。
  • email - 輸入電子郵箱地址。
  • date - 輸入日期。
  • color - 輸入顏色。
  • number - 輸入數字。
  • range - 滑塊輸入

(2)Input 通過屬性進行表單驗證

  • required - 標記當前元素爲必填。
  • pattern - 採用正則表達式驗證表單輸入。

(3)Input 元素的其他有用屬性

  • autofocus - 當頁面加載時,自動聚焦到當前的 input 元素。
  • form - 將 input 元素和特定的 Form 表單關聯。
  • placeholder - 輸入佔位符,提示用戶輸入。

(4)HTML 5 新元素 和 特殊屬性 contenteditable

  • progress - 元素表示進度條。
<progress value='30' max='100'></progress>
  • meter - 元素表示標尺。最大值 max 默認爲 1。
<meter value="3" min="0" max="10">3/10</meter>
<meter value="0.6">60%</meter>
  • HTML 5 特殊屬性 contenteditable,通過該屬性,可以讓一個普通元素可編輯。
<p contenteditable="true">這裏的內容式可編輯的</p>

1.3 使用音頻和視頻

(1)audio - 音頻標籤

<audio controls>
    <source src="vincent.mp3" />
    <source src="vincent.ogg" />
    您的瀏覽器不支持 audio 標籤
</audio>

audio 控制元素行爲的屬性如下

  • controls - 該屬性控制,是否顯示標準的音頻空間。
  • autoplay - 是否自動播放。默認 false。
  • loop - 是否循環播放。默認 false。
  • preload - 預先加載的方式。有三種情況:none 表示不預加載;metadata 只加載音頻的元數據;auto 表示預加載整個音頻。默認 auto。
  • volum - 音量,值在 0 - 1 之間

播放和暫停音頻的方法

var audio = document.getElementById('audio')
audio.play() // 播放
audio.pause() // 暫停

(2)video - 視頻標籤

currentTime 控制開始播放的時間

<video width="400" height="300" controls currentTime='5'>

    <source src="dizzy.mp4#t=5" type="video/mp4" />  <!-- 從 5s 開始 -->
    <source src="dizzy.ogv#t=5,10" type="video/ogg" /> <!-- 從 5s 到 10s -->
    <source src="dizzy.webm#t=,15" type="video/webm"> <!-- 到 15s 結束 -->
    <p>您的瀏覽器不支持 HTML 5 視頻</p>
</video>
發佈了55 篇原創文章 · 獲贊 22 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章