Html5語法之元素和屬性

結構元素

  • section 表示頁面中的一個內容區塊,比如章節、頁眉、頁腳或頁面
  • article 表示頁面中的一塊與上下文不想關的獨立內容
  • aside 表示article元素的內容之外的,與article元素的內容相關的輔助信息
  • header 表示頁面中一個內容區塊或整個頁面的標題
  • footer 表示整個頁面或者頁面中一個內容區塊的腳注
  • nav 表示頁面中導航鏈接部分
  • figure 表示一段獨立的流內容
  • main 表示網頁中的主要內容

其他元素

  • video元素 用于定義視頻
<video src="movie.ogg" controls="controls">video元素</video>
  • audio元素 用于定義音頻
<audio src="movie.wav">audio元素</audio>
  • embed元素 用來插入各種多媒體,格式可以是Midi,Wav,AIFF,AU,MP3等
<embed src="movie.wav"/>
  • mark 用來在視覺上向用戶呈現那些突出顯示或者高亮顯示的文字,如同span
  • progress 表示運行中的進程,可以使用progress元素來顯示javascript中耗費時間的函數的進程。
  • meter 表示度量衡,用于已知最大值和最小值的度量
  • time 表示日期和時間,也可以同時表示兩者
  • ruby 表示ruby注釋(中文拼音或字符)
  • rt 表示字符的解釋或發音
  • rp 在ruby注釋中使用,用來定義不支持ruby元素的瀏覽器所顯示的內容
  • wbr 表示軟換行,表示瀏覽器窗口或父級元素的寬度足夠寬時,不進行換行,如果寬度不夠時,主動在此處進行換行。
  • canvas 表示圖形,這個元素本身沒有行為,僅提供一塊畫布
<canvas id="myCanvas" width="200" height="200"></canvas>
  • command 表示命令按鈕,比如單選按鈕、復選框按鈕等
  • details 表示用戶要求得到并且可以得到的細節信息,可以與summary元素配合使用,summary元素提供標題或圖例,summary元素應該是details元素的第一個子元素。
<details>
  <summary>HTML5</summary>
  This document teaches you everything you have to learn about HTML5
</details>
  • datalist 表示可選數據列表,與input元素配合使用,可以制作出輸入值下拉列表
  • datagrid 表示可選數據的列表,以樹形列表的形式顯示
  • keygen 表示生成密鑰
  • output 表示不同類型的輸出,比如腳本的輸出
  • source 媒介元素,定義媒介資源
  • menu 表示菜單列表
<menu>
  <li><input type="checkbox">Red</li>
  <li><input type="checkbox">blue</li>
</menu>
  • dialog 表示對話框

新增input元素類型

  • email 表示輸入email地址的文本輸入框
  • url 表示必須輸入url地址的輸入框
  • number 數值文本輸入框
  • range 必須輸入一定范圍內數字值的輸入框
  • Date Pickers 選取日期和時間的輸入框
    • date 選取日月年
    • month 選取月年
    • week 選取周和年
    • time 選取時間
    • datetime 選取時間、月、日、年
    • datetime-local 選取時間、日、月、年(本地時間)

廢除的元素

能使用css替代的元素

對于basefont,big,center,font,s,strike,tt,u等元素,由于他們的功能是純粹為畫面展示服務的,s、strike元素可以由del元素進行替代,tt元素可以由CSS的font-family屬性進行替代。

不再使用frame框架

只支持iframe框架

只有部分瀏覽器支持的元素

applet,bgsound,blink,marquee等元素被廢除,applet可以由embed替代,bgsound可以由audio元素替代,marquee可以由javascript編程的方式所替代。

其他廢除的元素

  • 廢除rb元素,使用ruby替代
  • 廢除acronym,使用abbr元素替代
  • 廢除dir元素,使用ul元素替代
  • 廢除isindex元素,使用form和input元素相結合的方式替代
  • 廢除listing元素,使用pre替代
  • 廢除xmp,使用code元素替代
  • 廢除nextid,使用GUIDS替代
  • 廢除plaintext,使用“text/plain”替代

新增的屬性

  • 可以對input(type=text),select,textarea,button元素指定autofocus屬性,以指定屬性方式讓元素在畫面打開時自動獲取焦點
  • 可以對input元素(type=text)與textarea元素指定placeholder屬性,會對用戶輸入進行提示,提示用戶可以輸入的內容
  • 可以對input,output,select,textarea,button,fieldset指定form屬性,聲明它屬于哪個表單,然后將其放置在頁面上任何位置,而不是表單之內。
  • 可以對input元素與textarea元素指定required屬性,該屬性表示在用戶提交的時候進行檢查,檢查該元素內一定要有輸入內容。
  • input元素增加了幾個新的屬性,autocomplete,min,max,multiple,pattern,step,同時還有一個新的list元素與datalist元素配合使用,multiple屬性允許在上傳文件時一次上傳多個文件
  • input和button增加以下屬性:formaction,formenctype,formmethod,formnovalidate與formtarget,他們可以重載form元素的action,enctype,method,novalidate與target屬性,為fieldset元素增加了disabled屬性
  • 為input,button,form元素增加了novalidate屬性,該屬性可以取消提交時進行的有關檢查,表單可以被無條件提交
  • 為所有可使用標簽的表單元素(包括非隱藏的input元素(type屬性值不等于hidde)),button元素,select元素,textarea元素,meter元素,output元素,progress元素以及keygen元素定義一個lebels屬性屬性值為一個NodeList對象,代表該元素所綁定的標簽元素所構成的集合。
  • 可以在標簽內部放置一個表單元素,并且通過該標簽的control屬性訪問該表單元素
  • 針對input元素與textarea元素,增加SelectionDirection屬性,可以獲取鼠標的選取文字的方向。
  • 對復選框添加indeterminate屬性,說明復選框處于尚未明確是否選取的狀態。
  • 對類型為image的input元素添加用于指定圖片按鈕中圖片高度的height屬性與圖片寬度的width屬性。
  • 對textarea元素新增用于指定文字可輸入個數的maxlength屬性和用于指定表單提交時是否在文字換行處添加換行符的wrap屬性。

鏈接相關的屬性

  • 為a何area元素增加了media屬性,download屬性,以及ping屬性,download屬性用于讓用戶下載目標鏈接所指向的資源,而不是直接打開該目標鏈接,media屬性規定目標url是什么類型的媒介/設備進行優化的。
  • 為area元素增加了href,lang與rel屬性,以保持與a元素,link元素的一致。
  • 為link元素增加了新屬性size,該屬性可以與icon元素結合使用,該屬性指定關聯圖標的大小。
  • 為base元素增加了target屬性,主要目的是保持與a元素一致性

其他屬性

  • 為ol元素增加start屬性和鏈接相關的屬性,start屬性定義列表的開始編號,reversed屬性指定列表是否倒序顯示
  • meta元素增加charset屬性
  • menu元素增加type和label屬性,label屬性為菜單定義一個可見的標注,type屬性可以讓菜單以上下文菜單,工具條,與列表菜單三種形式出現。
  • 為style元素增加scoped屬性,用來規定樣式的作用范圍,譬如只對頁面上某個樹起作用
  • 為html元素增加屬性manifest,開發離線web應用程序時他與API結合使用,定義一個URL,在這個URL上描述文檔的緩存信息
  • 為iframe增加三個屬性-sandbox,seamless和srcdoc用來提高頁面安全性,防止不信任的web頁面執行某些操作。
廢除的屬性

全局屬性

是指可以對任何元素都使用的屬性。

contentEditable屬性

允許用戶編輯元素中的內容,布爾值屬性,有一個inherit繼承屬性,如果該屬性為true,那么inherit就是true。
還存在一個isContentEditable屬性,當元素為可編輯時,返回true,否則返回false。

<!DOCTYPE html>
<head>
<meta charset="UTF-8">
<title>contentEditable屬性示例</title>
<ul contentEditable='true'>
<li>列表元素1</li>
<li>列表元素2</li>
<li>列表元素3</li>
</ul>
</head>

designMode屬性

用來指定整個頁面是否可編輯,該屬性可編輯的話,支持contentEditable屬性的元素都可編輯,該屬性只能在javascript腳本中被修改,有兩個值‘on’和‘off’

document.designMode="on"

hidden屬性

所有元素都允許使用該屬性,功能是通知瀏覽器不渲染該元素,使該元素處于不可見狀態,

spellcheck屬性

spellcheck屬性針對input和textarea提供的屬性,他的功能是對用戶輸入的文本內容進行拼寫和語法檢查,必須明確聲明屬性值為true或false,如果元素的readOnly屬性或disabled屬性設為true,則不執行拼寫檢查。

<textarea spellcheck="true">

tabindex屬性

當不斷的敲擊tab鍵讓窗口或頁面中的控件獲得焦點,則每一個控件的tabindex表示該控件是第幾個被訪問到的。
把tabindex設置為負數,就可以避免不需要的控件獲得焦點

新增的事件

新增的事件

參考文章

書籍:HTML5與CSS3權威指南

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • 一、html5語法特點 1.DOCTYPE及字符編碼① 文檔聲明DOCTYPE:<!doctype html>② ...
    MGd閱讀 989評論 0 2
  • 中華驕傲 學習漢字,宣揚中國文化 正直:目不斜視,直視正前方,這就是漢字的演變過程!記住它的由來,更加有趣的學習中...
    幸福之巢閱讀 255評論 0 3
  • 當你寫不出東西,當你因此恐慌卻無奈,當你看著別人的文章寫得那么好并因此陷入更深的焦慮。 你不妨,停下來。 從電腦或...
    小失戀閱讀 486評論 0 5
  • 向往精彩而又熱烈的生活,但又害怕嘈雜。
    傾心珠閱讀 287評論 0 1