濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 全面解析HTML5中的標(biāo)準(zhǔn)屬性與自定義屬性

全面解析HTML5中的標(biāo)準(zhǔn)屬性與自定義屬性

熱門標(biāo)簽:阜陽企業(yè)外呼系統(tǒng) 南通數(shù)據(jù)外呼系統(tǒng)推廣 呼和浩特外呼電銷系統(tǒng)排名 外呼系統(tǒng)電話怎么投訴 申請(qǐng)400電話流程簡(jiǎn)介 地圖標(biāo)注位置能賺錢嗎 外呼線穩(wěn)定線路 邢臺(tái)縣地圖標(biāo)注app pageadm實(shí)現(xiàn)地圖標(biāo)注

正如 HTML5 語法中所闡述的,元素可以包含屬性(attributes)給一個(gè)元素設(shè)置各種屬性(properties)。

有些屬性被定義為全局的,可以用在任何元素上,而其他的被定義為元素特有的。所有的屬性都有一個(gè)名稱和一個(gè)值,看起來如下面的示例所示。

下面是一個(gè)使用 HTML5 屬性的例子,演示了如何用名為 class 的屬性和值 “example” 標(biāo)記一個(gè) div 元素:

<div class="example">...</div>
屬性只能在起始標(biāo)簽中指定,絕對(duì)不能用在結(jié)束標(biāo)簽中。

HTML5 屬性不區(qū)分大小寫,可以全部大寫或者混合使用,盡管最常見的約定是始終使用小寫。

標(biāo)準(zhǔn)屬性
下面列出的屬性幾乎所有的 HTML5 標(biāo)簽都支持。

屬性 選項(xiàng) 功能
accesskey 用戶自定義 定義訪問元素的鍵盤快捷鍵。
align right, left, center 水平對(duì)齊標(biāo)簽。
background URL 在元素后面設(shè)置一個(gè)背景圖像。
bgcolor 數(shù)值,十六進(jìn)制值,RGB值 在元素后面設(shè)置一個(gè)背景顏色。
class 用戶定義。 分類一個(gè)元素,便于使用級(jí)聯(lián)樣式表。
contenteditable true, false 定義用戶是否可以編輯元素的內(nèi)容。
contextmenu Menu id 為元素定義上下文菜單。
data-XXXX 用戶定義。 自定義屬性。 HTML 文檔的作者可以定義自己的屬性。 自定義屬性必須以 "data-" 開頭。
draggable true,false, auto 定義用戶是否可以拖動(dòng)元素。
height 數(shù)字值 定義表格,圖像或表格單元的高度。
hidden hidden 定義元素是否應(yīng)該可見。
id 用戶定義。 命名元素,便于使用級(jí)聯(lián)樣式表。
item 元素列表。 用于組合元素。
itemprop 條目列表。 用于組合條目。
spellcheck true, false 定義元素是否必須有拼寫或錯(cuò)誤檢查。
style CSS 樣式表。 給元素定義內(nèi)聯(lián)樣式。
subject 用戶定義 id。 定義元素關(guān)聯(lián)的條目。
tabindex Tab number 定于元素的 tab 鍵順序。
title 用戶定義。 元素的“彈出”標(biāo)題。
valign top, middle, bottom HTML 元素內(nèi)標(biāo)簽的垂直對(duì)齊方式。
width 數(shù)字值。 定義表格,圖像和表格單元的寬度。

自定義屬性
HTML5 還引入了一個(gè)新特性,就是可以添加自定義的數(shù)據(jù)屬性。

自定義數(shù)據(jù)屬性以 data- 開頭,基于我們的需求命名。下面是一個(gè)簡(jiǎn)單的例子:

<div class="example" data-subject="physics" data-level="complex">
...
</div>
上面的例子中兩個(gè)叫做 data-subject 和 data-level 的自定義屬性在 HTML5 中是完全有效的。我們還可以使用 JavaScript API 或者在 CSS 中以獲取標(biāo)準(zhǔn)屬性類似的方式獲取它們的值。

在HTML元素中添加自定義屬性,通過JavaScript進(jìn)行訪問,如果你之前有嘗試過,你會(huì)發(fā)現(xiàn),容易忽略標(biāo)記驗(yàn)證,而HTML5可以為你提供在有效的網(wǎng)頁內(nèi)創(chuàng)建并使用自己的元素屬性的功能。

創(chuàng)建HTML5文件:

如果你還沒想好要使用哪一個(gè),可以復(fù)制下面的代碼:

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. <!DOCTYPE html   
  2. >  
  3.     
  4. <  
  5. html  
  6. >  
  7.     
  8. <  
  9. head  
  10. >  
  11.     
  12. <  
  13. script  
  14. >  
  15.     
  16. /*functions here*/     
  17. </  
  18. script  
  19. >  
  20.     
  21. </  
  22. head  
  23. >  
  24.     
  25. <  
  26. body  
  27. >  
  28.     
  29. </  
  30. body  
  31. >  
  32.     
  33. </  
  34. html  
  35. >  

 
在body中設(shè)置自定義元素,在head部分腳本區(qū)域利用JavaScript元素進(jìn)行訪問。

創(chuàng)建元素:

首先,添加一些簡(jiǎn)單的內(nèi)容和自定義屬性以及ID等元素,以便我們能夠識(shí)別JavaScript示例。

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. <  
  2. div id="product1" data-product-category="clothing"  
  3. >  
  4.     
  5. Cotton Shirt     
  6. </  
  7. div  
  8. >  

 
正如你所看到的那樣,自定義屬性的形式為:“data-*”,在“data-”部分設(shè)定名稱或者你選定的名稱。在HTML5中使用自定義屬性,這是唯一有效的方法。因此,如果你想驗(yàn)證網(wǎng)頁是否有效可才采用這種方法。

當(dāng)然,項(xiàng)目細(xì)節(jié)部分決定了自定義屬性對(duì)你是否有用,以及該將其如何命名。這個(gè)示例可適用于不同產(chǎn)品類別的零售網(wǎng)站。

自定義屬性允許你以一種特殊的方式利用頁面內(nèi)的JavaScript代碼來設(shè)置元素,例如,動(dòng)畫顯示功能。如果沒有標(biāo)準(zhǔn)的HTML元素,我們建議使用自定義屬性。

添加測(cè)試按鈕

在頁面上利用自身的JavaScript元素即可執(zhí)行事件,前提是將下面的代碼添加到頁面中:

XML/HTML Code復(fù)制內(nèi)容到剪貼板
  1. <  
  2. input type="button" value="get attribute" onclick="getElementAttribute('product1')"  
  3. />  

 
獲取屬性:

在JavaScript中訪問屬性最常用的方法是使用“getAttributes”,這也是我們要做的第一步。在頁面的head腳本區(qū)域添加以下函數(shù):

JavaScript Code復(fù)制內(nèi)容到剪貼板
  1. function getElementAttribute(elemID) {     
  2. var theElement = document.getElementById(elemID);     
  3. var theAttribute = theElement.getAttribute('data-product-category');     
  4. alert(theAttribute);     
  5. }   

這里,我們?yōu)槭纠黾恿薬lert 值,當(dāng)然你也可以根據(jù)自身需求在腳本中添加。

獲取數(shù)據(jù):

你可以使用元素?cái)?shù)據(jù)集來替代DOM “getAttributes”,這或許更有效,尤其是在某種情況下,代碼通過多種屬性進(jìn)行迭代,然而,瀏覽器對(duì)數(shù)據(jù)集的支持依然非常低,所以牢記這一點(diǎn),此代碼與//后面的方法一樣可執(zhí)行相同的進(jìn)程。

//var theAttribute = theElement.getAttribute('data-product-category'); 
var theAttribute = theElement.dataset.productCategory;
從屬性名稱開始在數(shù)據(jù)集中刪除“data-”,它仍然包含在HTML中。

請(qǐng)注意,如果你的自定義屬性名稱中有一個(gè)連字符,當(dāng)通過數(shù)據(jù)訪問時(shí)這會(huì)呈現(xiàn)出camel-case形式,即(“data-product-category” 變成“productCategory”)。

其他模塊、函數(shù)

我們已經(jīng)獲取該屬性,腳本仍然可以設(shè)置和刪除。下面的代碼演示了如何使用標(biāo)準(zhǔn)的JavaScript模塊和數(shù)據(jù)集來設(shè)置屬性。

JavaScript Code復(fù)制內(nèi)容到剪貼板
  1. //DOM method       
  2.     
  3. theElement.setAttribute('data-product-category''sale');      
  4. //dataset version       
  5.     
  6. theElement.dataset.productCategory = "sale";     
  7. 你也可以使用DOM方法或者數(shù)據(jù)集來刪除某個(gè)屬性:   
  8.   
  9. //DOM method     
  10. theElement.removeAttribute('data-product-category');    
  11. //dataset version     
  12. theElement.dataset.productCategory = null;   

在HTML5中實(shí)現(xiàn)自定義屬性技術(shù)上并不是很復(fù)雜,真正困難的是選擇使用的方法是否適用于你的項(xiàng)目;如果適用,該如何使其更有效?請(qǐng)記住,現(xiàn)在啟用數(shù)據(jù)集方法作為頁面功能還為時(shí)尚早,畢竟很多瀏覽器暫不支持此功能。

標(biāo)簽:黃山 楊凌 辛集 撫順 內(nèi)蒙古 鶴崗 蚌埠 德州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《全面解析HTML5中的標(biāo)準(zhǔn)屬性與自定義屬性》,本文關(guān)鍵詞  全面,解析,HTML5,中的,標(biāo)準(zhǔn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《全面解析HTML5中的標(biāo)準(zhǔn)屬性與自定義屬性》相關(guān)的同類信息!
  • 本頁收集關(guān)于全面解析HTML5中的標(biāo)準(zhǔn)屬性與自定義屬性的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    日照市| 娱乐| 关岭| 孟津县| 武清区| 中山市| 封丘县| 前郭尔| 长兴县| 永济市| 左云县| 会东县| 湄潭县| 温州市| 上杭县| 绥德县| 吉木萨尔县| 亚东县| 隆德县| 潞城市| 永寿县| 文登市| 黔南| 石棉县| 义马市| 常宁市| 逊克县| 扎囊县| 兰州市| 林西县| 定陶县| 迭部县| 巴中市| 噶尔县| 九寨沟县| 大邑县| 上杭县| 东阳市| 龙泉市| 含山县| 南开区|