HTML表單(tabindex, taborder和notab)屬性
作者:佚名 時間:2014-04-03 分享到:
tabindex, taborder和notab屬性
默認(rèn)狀態(tài)下,所有元素(隱藏元素除外)都是表單制表(tab)順序的一部分。當(dāng)用戶按下Tab鍵時,瀏覽器會將輸入焦點由表單中的這個元素轉(zhuǎn)移到下一個元素上。對大多數(shù)瀏覽器來說,元素的制表順序和<form>標(biāo)簽中元素的順序一樣。而使用tabindex屬性可以改變制表順序中那些元素的順序和位置。
為了給制表順序中的某個元素重新定位,將屬性中的值設(shè)為制表順序中希望元素所處的位置,第一個元素就是順序中的第一位。如果確實想改變表單的制表順序,我們建議網(wǎng)站制作人員在表單的所有元素中都包括tabindex屬性,并為每個屬性都設(shè)置一個適當(dāng)?shù)闹怠_@樣就可以確信將每個元素都明確地放在了制表順序中,用戶在表單中切換時也不會產(chǎn)生任何疑問。
tabindex屬性的值是一個正整數(shù),它說明了標(biāo)簽內(nèi)的內(nèi)容在文檔整個制表順序中的位置。制表順序以有顯式tabindex值的元素開始,并按照從低到高的數(shù)字順序排列。相同值的標(biāo)簽會按照它們在文檔中出現(xiàn)的順序來決定其在制表順序中的選擇。對于各種表單控件和超鏈接這樣的其他所有可選擇的標(biāo)簽來說,這種表格標(biāo)簽會排在最后,并按照它們在文檔中出現(xiàn)的順序獲得制表順序。如果要從制表序列中去掉一個元素,只要將tabindex的值設(shè)為0就可以了。當(dāng)用戶按Tab鍵在表單元素中切換時,這個元素會被忽略。Internet Explorer利用其特有的taborder和notab屬性,引入了制表順序管理的概念。taborder屬性與tabindex屬性的功能一樣,只是notab等于tabindex=0。通常來講,我們建議最好采用tabindex屬性而不要用taborder.