H5一二事

先回顧一下WEB技術的幾個階段html

  • Web 1.0 內容爲主,主要流行HTML和CSS
  • Web 2.0 動態網頁,流行AJAX/JavaScript/DOM
  • H5 時代,WEB開發迴歸富客戶端

 

那麼H5確定不是多了一些標籤就完事了,H5也跟酷炫沒什麼關係,那是CSS3的事情,它更多的職責是功能,而不是外觀,是JavaScript API和CSS的提高,構建 Web 應用程序總體解決方案api

 

 H5應用場景瀏覽器

  • 極具表現力的網頁   
  • 網頁應用程序   好比PC端的iCloud、百度腦圖、Office 365···APP端的淘寶、京東、美團···WeChat端的淘寶、京東、美團···
  • 混合式本地應用   好比PC端的網易雲音樂、有道詞典··· APP端的淘寶、京東、美團···
  • 簡單的遊戲

H5新特性網絡

  • 更語義化標籤
  • 智能表單    新的表單類型,如:email,url,number
  • 新增表單功能屬性,如:autocomplete,autofocus   虛擬鍵盤適配,經過表單的類型決定移動端彈出的鍵盤類型
  • 網頁多媒體,  音頻、視頻、字幕
  • 屬性,語義化屬性      連接關係描述、結構數據標記、ARIA、自定義屬性
  • Canvas,提供網頁繪圖的可能   2D 繪圖、3D (WebGL)
  • SVG

JavaScript APIsession

  • 核心平臺提高,JS在DOM和BOM兩個方向上都新增了不少api,便於開發應用程序    新的選擇器、Element.classList、訪問歷史API、全屏API
  • 網頁存儲,提供網頁中操做客戶端本地存儲的API   Application Cache、localStorage、sessionStorage、WebSQL、IndexedDB
  • 設備信息訪問,JS能夠訪問硬件的一些信息  網絡狀態、硬件訪問、設備方向、地理圍欄
  • 拖放操做  網頁內拖放、桌面拖入
  • 文件  文件系統API、FileReader
  • 網絡訪問  XMLHttpRequest、fetch、WebSocket
  • 多線程、桌面通知等等

H5 骨架多線程

 在Sublime\WebStorm等一些工具中  歎號加回車自動生成H5骨架ide

 1 <!-- H5的DOCTYPE聲明作了最大簡化 -->
 2 <!DOCTYPE html>
 3 <html lang="en">
 4 <head>
 5 <meta charset="UTF-8">
 6 <!-- 在標準的H5骨架中charset是直接在meta中設置charset -->
 7 <!-- 字符編碼的設置必定是在head中的第一行 -->
 8 <title>頁面標題</title>
 9 </head>
10 <body>
11 
12 </body>
13 </html>

 

語義化標籤工具

H5中制定了一系列語義化標籤:fetch

  • section:獨立的內容節塊,通常包含標題和內容
  • article:一種特殊的section,定義文檔中的具體的文章內容
  • nav:頁面導航的連接組
  • aside:標籤用來裝載非正文的內容,此標籤中的文字權重低
  • header:定義文檔的頁眉,不單單是文檔的頁頭可使用header,一個獨立塊的頭部也應該使用header
  • footer:定義section或document的頁腳

咱們應該根據內容的性質決定使用特定的標籤,好比說優化

  • h1必定只能出現一個,這並非HTML的約定,頁面中最重要的內容
  • time標籤專門用於時間,
  • datetime應該是一個標準時間格式,
  • pubdate指的是當前時間爲article的發佈時間

在H5中,主體結構標籤默認和DIV都是相同的塊級效果

可是DIV沒有語義,而以上標籤有特定語義

那麼爲啥要有語義化標籤?

  1. 可以便於開發者閱讀和寫出更優雅的代碼,代碼如詩
  2. 同時讓瀏覽器或是網絡爬蟲能夠很好地解析,從而更好分析其中的內容
  3. 使用語義化標籤會具備更好地搜索引擎優化

最近羣裏常常討論,關於何時使用H5的新特性,能不能使用新特性的問題

我我的認爲,無傷大雅的地方直接用好比一個文本框,加上placeholder就具有佔位文本提示功能,瀏覽器不支持也不會報錯,那就能夠直接使用再好比`<input type="email">`,若是瀏覽器不支持,默認會顯示文本框,那也能夠直接用。

相關文章
相關標籤/搜索