Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 属性的标签标签可以与普通div关联吗?_Html - Fatal编程技术网

Html 属性的标签标签可以与普通div关联吗?

Html 属性的标签标签可以与普通div关联吗?,html,Html,在html5定义下,使用标签的“for”值作为普通div元素的id是否有效(例如,我制作了一个封装在div中的自定义下拉列表实现) 如果可能的话,请告诉我 托马斯不符合规范: 有些元素(并非所有元素都与表单关联)被分类为 可标记元素。这些元素可以与 标签元素 按钮“输入”(如果类型属性未处于隐藏状态)“keygen” “仪表”“输出”“进度”“选择”“文本区域” 另见: 可以指定for属性以指示具有 要关联的标题。如果指定了属性, 属性的值必须是 与标签元素相同的文档。如果指定了属性,并且 文

在html5定义下,使用标签的“for”值作为普通div元素的id是否有效(例如,我制作了一个封装在div中的自定义下拉列表实现)

如果可能的话,请告诉我


托马斯不符合规范:

有些元素(并非所有元素都与表单关联)被分类为 可标记元素。这些元素可以与 标签元素

按钮“输入”(如果类型属性未处于隐藏状态)“keygen” “仪表”“输出”“进度”“选择”“文本区域”

另见:

可以指定for属性以指示具有 要关联的标题。如果指定了属性, 属性的值必须是 与标签元素相同的文档。如果指定了属性,并且 文档中有一个元素的ID等于 for属性,第一个这样的元素是可标签元素, 然后,该元素就是label元素的标签控件

我确实认为这个问题提供了一个有效的用例。我不确定这种情况下推荐的模式是什么,尽管ARIA属性可能有助于使标记更易于访问:


正如Tim所指出的,不可能以本机方式实现,但是使用一点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规范:谢谢Tim,这是一个有趣的发现