搜尋
首頁web前端H5教程HTML5.1中有哪些新特性?

 HTML 5.1概覽

#  兩年前HTML5標準的發布對於web開發社群來說是一件大事。不僅是因為它包含了一系列令人印象深刻的新特性, 還因為它是1999年發布的HTML4.01標準以後,對HTML的第一個大版本更新。你現在依然可以看到一些網站誇耀他們在使用「現代」的HTML5標準。

  幸運的是我們不需為下一次HTML標準的更新等待那麼長時間。 2015年10月,W3C開始著手HTML5.1草案,其目標是修復一些HTML5遺留的問題。多次迭代後, 草案於2016年6月達到“候選建議(Candidate Recommendation)”階段,2016年9月達到“提議建議(Proposed Recommendation)”,最終2016年11月發布W3C 建議。關注新標準的人可能注意到了,這是一段曲折之路。很多開始提出的HTML5.1特性因為不好的設計或缺少瀏覽器廠商支援而被廢棄了。

  儘管HTML5.1仍在發展, W3C已經開始著手HTML5.2草案,該標準預計2017年末發布。本文是對HTML5.1一些有趣的新功能和提升的概覽。瀏覽器對這些特性依然缺乏支持,但是至少我們會告訴你一些支援這些特性的瀏覽器,用來測試每個範例。

  上下文選單使用menu和menuitems元素

  HTML5.1草案介紹了兩種不同的menu元素: context和toolbar。前者用來擴展本地上下文選單,通常被頁面上的滑鼠右鍵啟動;後者用來定義一個普通的選單元件。在發展過程中,toolbar 被放棄了,但是context選單保存了下來。

  可以使用

標籤來定義一個包含一個或幾個 元素的選單,然後把它綁定到任何使用contextmenu 屬性的元素上。

  每個 可以是以下三種類型之一:

  • checkbox – 允許選擇或取消選擇一個選項(option);

  • command – 允許在點擊滑鼠時執行一個動作;

  • radio – 允許在一組選項中選擇一個.

  這裡有一個基本的使用例子,可以在Firefox49中運行, 但是Chrome54目前不行。

  請看SitePoint (@SitePoint)在CodePen上HTML5.1選單範例。

  在一個支援的瀏覽器上,這個上下文選單的範例應該看起來這樣:

A HTML 5.1 context menu

  上下文選單中有自訂項目。

  細部(Details)與總結(Summary)元素

  新的

元素可以透過滑鼠點擊實現附加資訊的展示和隱藏。這是使用JavaScript時候常在做的事,現在可以使用
元素和元素代勞了。點選元素可以展示和隱藏details元素的其餘部分.

  下面的範例可以在Firefox和Chrome中進行測試。

  請看SitePoint (@SitePoint)在CodePen上HTML5.1 細節與總結 demo。

  這個demo在支援的瀏覽器上應該是下面這樣:

Details and summary elements

  更多的input類型- month,week 和datetime-local

  input擴充了三種類型: month, week 和datetime-local。

  前兩種讓你可以選擇週或月。在Chrome中兩者都渲染成下拉的日曆,可以選擇某週或某月。當你用JavaScript得到它們的值,你將得到一個大致這樣的字串: "2016-W43"(week input); "2016-10" (month input)。

  最初,HTML5.1草案介紹了兩種日期類型input — datetime和datetime-local。不同的是,datetime-local 使用使用者時區, 而datetime允許你選擇時區。發展過程中,datetime 被放棄了,現在只有datetime-local存在。 datetime-local input由兩部分組成 — 日期,可以像week 和 month一樣進行選擇;時間, 可以單獨輸入。

  下面是關於所有新類型input的例子,它在chrome中可以正常展示,但是firfox不行。

  請看SitePoint (@SitePoint)在CodePen上HTML 5.1 week, month 和 datetime inputs。

  這個demo在支援的瀏覽器上應該是下面這樣:

Week, month and datetime-local inputs

  響應式圖片

  HTML5.1包含幾個在不使用CSS情況下實現響應式圖片的新特性。每個特性都有自己單獨的使用場景。

  srcset屬性

  srcset影像屬性允許列出多個可用於替代的圖片資料來源,這些資料來源的像素密度不同。這使得瀏覽器可以針對使用者裝置選擇合適品質的圖片(由裝置的像素密度、縮放比例或網路速度決定)。例如,在低速手機網路和小螢幕手機的情況下,應該為使用者提供低像素的圖片。

  srcset屬性接受一個用逗號分隔的URL列表,每個URL帶有一個表示最接近所請求圖片像素比(一個CSS像素所代表的物理像素數量)的修飾x。以下是一個簡單的例子:

<img src="/static/imghwm/default1.png"  data-src="images/low-res.jpg"  class="lazy"   srcset="
  images/low-res.jpg 1x, 
  images/high-res.jpg 2x, 
  images/ultra-high-res.jpg 3x"
>

  在這個例子中,如果使用者裝置的像素比是1,圖片low-res將會被展示;如果是2,圖片high-res將會被展示;如果是3或更大,圖片ultra-high-res將會被展示。

  或者,你可以選擇將圖片展示成不同尺寸。這需要使用w:

<img src="/static/imghwm/default1.png"  data-src="images/low-res.jpg"  class="lazy"   srcset="
  images/low-res.jpg 600w, 
  images/high-res.jpg 1000w, 
  images/ultra-high-res.jpg 1400w"
>

  在這個例子中,圖片low-res被定義成600px寬,圖片high-res被定義成1000px寬,ultra-high-res是1400px寬。

  sizes屬性

  你可能想要根據使用者螢幕尺寸來使用不同方式展示圖片。例如,你可能想在寬螢幕上用兩欄展示圖片,窄一些的螢幕上用一欄。這點用sizes屬性就可以實現。它允許你為圖片分配螢幕的寬度,然後透過srcset屬性選擇合適的圖片。下面是一個例子:

<img src="/static/imghwm/default1.png"  data-src="images/low-res.jpg"  class="lazy"   sizes="(max-width: 40em) 100vw, 50vw" 
  srcset="images/low-res.jpg 600w, 
  images/high-res.jpg 1000w, 
  images/ultra-high-res.jpg 1400w"
>

  當視口寬度大於40em時,sizes屬性把圖片的寬度定義為視口寬度的50%;當視口(viewport)寬度小於或者等於40em時,把圖片寬度定義為視窗寬度的100%。

  picture元素

  如果根據螢幕不同改變圖片的尺寸還是無法滿足需求,你想根據螢幕不同展示不同的圖片,那就需要使用picture元素。它允許你透過用指定多個不同元素,來為不同尺寸的螢幕定義不同資源的圖片。 元素作為URL載入圖片的來源。

<picture>
  <source media="(max-width: 20em)" srcset="
    images/small/low-res.jpg 1x,
    images/small/high-res.jpg 2x, 
    images/small/ultra-high-res.jpg 3x
  ">
  <source media="(max-width: 40em)" srcset="
    images/large/low-res.jpg 1x,
    images/large/high-res.jpg 2x, 
    images/large/ultra-high-res.jpg 3x
  ">

  <img  src="/static/imghwm/default1.png"  data-src="images/large/low-res.jpg"  class="lazy"   alt="HTML5.1中有哪些新特性?" >
</picture>

  如果你想知道更多關於響應式圖片的東西,請戳How to Build Responsive Images with srcset.

  用form.reportValidity()驗證表單

##  用form.reportValidity()驗證表單

# HTML5定義的form.checkValidity()方法可以檢查表單是否符合事先定義好的驗證器然後傳回一個布林值。新的reportValidity() 方法很相似 — 它也可以檢驗一個表單並傳回結果,但是它也能為使用者報告錯誤。以下是一個例子(請在Firefox或Chrome中測試):

  請在CodePen上看SitePoint (@SitePoint)的範例HTML 5.1 report validity demo。

  "First name"輸入框被要求非空,如果不填寫它將被標記有錯誤。如果符合預期,它將是這樣:Working form validation with a message

  frames的AllowfullscreenFrames的Allowfullscreen屬性

  frames新的布林屬性allowfullscreen可以控制內容是否可以透過questrequestFullscreen( )方法來全螢幕展示內容。

  使用element.forceSpellCheck()進行拼字檢查

  新的element.forceSpellCheck()方法允許你在text元素上觸發拼字檢查。這也是本文所列出的所有特性中第一個還不被任何瀏覽器支援的特性。也許,這可以用來進行檢查還沒有被使用者直接編輯的元素。

  沒有寫進HTML5.1的特性

  一些特性在第一版的草案中被定義但是最終被刪除了,大部分原因是瀏覽器廠商缺乏興趣。以下是其中一些有趣的方法: 

 inert屬性

  inert屬性可以停用所有子元素的使用者交互,就像給所有子元素都加了disabled屬性。

  dialog元素

  

元素提供一個原生的彈出框,它甚至有一個方便的表單集合- 在上使用method屬性可以阻止表單提交到伺服器上,而是關閉彈出框並將結果傳回給彈出框的建立者。

  這個特性似乎在firfox仍然支持,所以可以看看下面這個例子(譯者註:firfox V49.0.2不支持:

###  請看SitePoint (@SitePoint)在CodePen的例子HTML dialog element。

  補充

  這不是一篇關於HTML5.1所有新功能的文章。有許多小的新特性、改變已經從現行標準中刪除,還有一些從未使用過的特性也被刪除了。

【相關推薦】

1. HTML5開發手機應用程式-詳細介紹viewport的作用(圖文)

#2. #20分鐘看懂html5 看看H5都有啥新功能

#3. H5學習之旅-H5的新功能(1)

#

以上是HTML5.1中有哪些新特性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
H5:探索最新版本的HTMLH5:探索最新版本的HTMLMay 03, 2025 am 12:14 AM

html5isamajorrevisionofthehtmlStandardThatRevolutionsWebDevelopmentBybyIntroDucingNewSemanticeLementSemelementsandAndCapabilities.1)itenhancesCodereAdabilityAndSeowitability andSeowithelientsLike,and.2)

超越基礎:H5代碼中的高級技術超越基礎:H5代碼中的高級技術May 02, 2025 am 12:03 AM

H5的高級技巧包括:1.利用進行複雜圖形繪製,2.使用WebWorkers提升性能,3.通過WebStorage增強用戶體驗,4.實現響應式設計,5.利用WebRTC實現實時通信,6.進行性能優化和最佳實踐。這些技巧幫助開發者構建更動態、互動和高效的Web應用。

H5:網絡內容和設計的未來H5:網絡內容和設計的未來May 01, 2025 am 12:12 AM

H5(HTML5)將通過新元素和API提升網頁內容和設計。 1)H5增強了語義化標記和多媒體支持。 2)它引入了Canvas和SVG,豐富了網頁設計。 3)H5的工作原理是通過新標籤和API擴展HTML功能。 4)基本用法包括使用創建圖形,高級用法涉及WebStorageAPI。 5)開發者需注意瀏覽器兼容性和性能優化。

H5:網絡開發的新功能和功能H5:網絡開發的新功能和功能Apr 29, 2025 am 12:07 AM

H5帶來了多項新功能和能力,極大提升了網頁的互動性和開發效率。 1.語義化標籤如、增強了SEO。 2.多媒體支持通過和標籤簡化了音視頻播放。 3.Canvas繪圖提供了動態圖形繪製工具。 4.本地存儲通過localStorage和sessionStorage簡化了數據存儲。 5.地理位置API便於開發基於位置的服務。

H5:HTML5的關鍵改進H5:HTML5的關鍵改進Apr 28, 2025 am 12:26 AM

HTML5帶來了五個關鍵改進:1.語義化標籤提升了代碼清晰度和SEO效果;2.多媒體支持簡化了視頻和音頻嵌入;3.表單增強簡化了驗證;4.離線與本地存儲提高了用戶體驗;5.畫布與圖形功能增強了網頁的可視化效果。

HTML5:標準及其對Web開發的影響HTML5:標準及其對Web開發的影響Apr 27, 2025 am 12:12 AM

HTML5的核心特性包括語義化標籤、多媒體支持、離線存儲與本地存儲、表單增強。 1.語義化標籤如、等,提升代碼可讀性和SEO效果。 2.和標籤簡化多媒體嵌入。 3.離線存儲和本地存儲如ApplicationCache和LocalStorage,支持無網絡運行和數據存儲。 4.表單增強引入新輸入類型和驗證屬性,簡化處理和驗證。

H5代碼示例:實際應用和教程H5代碼示例:實際應用和教程Apr 25, 2025 am 12:10 AM

H5提供了多種新特性和功能,極大地增強了前端開發的能力。 1.多媒體支持:通過和元素嵌入媒體,無需插件。 2.畫布(Canvas):使用元素動態渲染2D圖形和動畫。 3.本地存儲:通過localStorage和sessionStorage實現數據持久化存儲,提升用戶體驗。

H5和HTML5之間的連接:相似性和差異H5和HTML5之間的連接:相似性和差異Apr 24, 2025 am 12:01 AM

H5和HTML5是不同的概念:HTML5是HTML的一個版本,包含新元素和API;H5是基於HTML5的移動應用開發框架。 HTML5通過瀏覽器解析和渲染代碼,H5應用則需要容器運行並通過JavaScript與原生代碼交互。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器