请考虑以下两个示例:
<label>Label:<input /></label>
<label for="inp">Label:</label><input id="inp" />
它们之间有什么区别吗?我应该使用其中一个?是否有任何性能或兼容性问题?
使用for
语法时,关系被更明确地定义,尽管我相信大多数浏览器对两者都实现相同的行为。
我认为是优先事项。就我个人而言,我会使用for
语法,因为我认为比input
元素成为其label
元素的一部分更具语义意义。
'label for'语法意味着您创建的标签旨在用作ID为'inp'的输入的标签。如果在大多数浏览器中单击此标签,则光标焦点将落在“ inp”输入元素上。这是将标签与其相应的表单控件链接的一种好方法。
我不知道兼容性问题或任何有关性能的问题。在我看来,这在语法上是合理的,据我所知CSS规范声称两者均有效。