html中不同的屬性支持略有區別。所謂的通用屬性即全局屬性,是所有元素都支持的一些屬性,mdn里解釋如下
全局屬性是所有HTML元素共有的屬性; 它們可以用于所有元素,即使屬性可能對某些元素不起作用。
我們可以在所有的HTML元素上指定全局屬性,甚至是在標準里沒有指定的元素。這意味著任何非標準元素仍必須能夠應用這些屬性,即使使用這些元素意味著文檔不再是html5兼容的。例如,雖然<foo>不是一個有效的HTML元素,但是html5兼容的瀏覽器隱藏了標記為<foo hidden>...<foo>的內容。
除了基本的HTML全局屬性之外,還存在以下全局屬性:
- xml:lang 和 xml:base ——兩者都是從XHTML規范繼承,但為了兼容性而被保留的。
- 多重aria-*屬性,用于改善可訪問性。
- 事件處理程序屬性:onabort, onautocomplete, onautocompleteerror, onblur, oncance, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncuechange, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onsort, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting.
H5保留的常用全局屬性
- id:指定元素唯一標識。
- style:為元素指定樣式。
- class:用于匹配css樣式選擇器。
- dir:指定文字內容方向。ltr、rtl
- title:指定元素額外信息,一般鼠標移上去會顯示。
- lang:告訴瀏覽器或搜索引擎,標簽內所使用的的語言。en ja ch
- accesskey:指定鍵盤按鍵,可使得元素快速獲取焦點。
- tabindex:切換焦點順序。
HTML新增的全局屬性
- contentEditable:boolean是否可直接編輯html里的內容。HTMLElement接口提供了isContentEditable屬性。
- hidden:boolean隱藏即相當于display:none.很有用!
- spellcheck:是否對用戶輸入的內容進行文本檢查。
- autocapitalize:控制用戶的文本輸入是否和如何自動大寫,它可以有以下的值:
- off or none,沒有應用自動大寫(所有字母都默認為小寫字母)。
- on or sentences,每個句子的第一個字母默認為大寫字母;所有其他字母都默認為小寫字母。
- words,每個單詞的第一個字母默認為大寫字母;所有其他字母都默認為小寫字母。
- characters,所有的字母都應該默認為大寫。
- contextmenu:右鍵菜單,暫無支持。
- data-*:一類自定義數據屬性,它賦予我們在所有 HTML 元素上嵌入自定義數據屬性和與腳本交換數據的能力,HTMLElement.dataset.* 可以訪問讀寫它們。
- draggable:boolean指示是否可以 使用 H5新增的拖放API 拖動元素
- is:允許您指定標準HTML元素應該像已注冊的自定義內置元素一樣。框架和HTML組件會用到。