是在HTML5定義有效的HTML使用標籤的「爲」價值作爲一個正常的div元素的ID(比如我做了這是一個div裏面包裹的自定義下拉列表實現)屬性的標籤標籤可以與正常的div關聯嗎?
請讓我知道如果可能的話,
托馬斯
是在HTML5定義有效的HTML使用標籤的「爲」價值作爲一個正常的div元素的ID(比如我做了這是一個div裏面包裹的自定義下拉列表實現)屬性的標籤標籤可以與正常的div關聯嗎?
請讓我知道如果可能的話,
托馬斯
不按照規範:
一些元素,並不是所有的形式相關,被歸類爲 貼標籤的元素。這些元素可以與 標籤元素相關聯。
「按鈕」,「輸入」(如果該類型屬性不是在隱藏狀態)「密鑰生成」 「米」「輸出」,「進步」,「選擇」,「文本區域」
http://www.w3.org/TR/html5/forms.html#category-label
參見:可被指定
for屬性來指示與 表單控件,其標題是要關聯。如果指定了屬性,則該屬性的值必須是與標籤元素相同的文檔中的一個可插入元素的ID。如果指定了屬性,並且 在Document中有一個元素的ID等於值 for屬性,並且第一個這樣的元素是可標記元素 那麼該元素是標籤元素的標籤控件。
http://www.w3.org/TR/html5/the-label-element.html#attr-label-for
我認爲這個問題提出了一個有效的使用案例。我不知道有什麼推薦的模式是這樣的情景,雖然ARIA屬性可能有助於使標記更容易:
https://developer.mozilla.org/en/Accessibility/ARIA/forms/Basic_form_hints https://developer.mozilla.org/Special:Tags?tag=ARIA
蒂姆指出這是不可能的本地做,然而,你可以模擬一點點的JavaScript
jQuery(document).delegate('[for]','click',function(e){
var targetEl = jQuery('#'+jQuery(this).attr('for'));
if(targetEl.is('div.your-custom-dropdown-class')) { //if targetEl is one of your dropdowns
e.preventDefault();
targetEl.trigger('click'); //open the drop down
}
});
從HTML5規範擴展:[標籤元素的for屬性必須引用一個窗體控件](http://www.w3.org /TR/html-markup/label.html#label) – steveax 2012-07-29 01:39:19
謝謝Tim,這是一個有趣的發現 – Thomas 2012-07-29 01:40:40
@steveax你有更新的鏈接嗎? – 2017-11-04 22:51:47