复选框上的<label>:是否有更多网站不使用它的原因?

Dar*_*ein 11 html usability label

我总是尝试做以下事情:

<label><input type="checkbox" /> Some text</label>
Run Code Online (Sandbox Code Playgroud)

要么

<label for="idOfField"><input type="checkbox" id="idOfField" /> Some text</label>
Run Code Online (Sandbox Code Playgroud)

我的问题与标签标签有关,特别是在复选框上.

大多数网站(我会说> 40%)不使用<label>标签.

是否有一个原因?浏览器或其他问题是否存在问题?

注意:如果人们不了解<label>标签,它有许多优点:

  • 复选框和收音机:您可以单击文本以及复选框以选中复选框(以及我相信的焦点):Blah blah blah
  • 其他输入:如果单击文本,它将聚焦输入(文本区域,文本,文件)(此功能不如复选框和无线电有用)

注2:有些人提到示例#2比#1(上面)更正确,但是根据这里的文档,要么是正确的

Fry*_*Guy 13

我认为这可能是人们不了解<label>标签的一个因素.我没有,直到这篇文章.

  • 我传播<label>标签的优点. (4认同)
  • 很遗憾这个标签不是很受欢迎.我甚至看到破解的javascript试图模仿它的行为:/ (2认同)

Ein*_*eki 6

我同意标签通常是一个未知的标签.我在表单中使用它

<label for="chk1">Some text</label><input id="chk1" type="checkbox"/>
Run Code Online (Sandbox Code Playgroud)

for属性让用户点击标签也选择带有相应id(不是名称)的复选框而不是ann来我可以用CSS更好地控制布局.

不过,我会尝试你的解决方案


Jon*_*Jon 5

使用<label>我所知道的没有任何缺点.在过去的几年里我经常使用它.

实际上有3种方法可以设置标签,前两种方式与您在问题中提供的方式相对应:

<label for="xa">XA: <input type="text" id="xa" /></label><br />
<label for="xb">XB:</label> <input type="text" id="xb" /><br />
<label>XC: <input type="text" id="xc" /></label>
Run Code Online (Sandbox Code Playgroud)

以上所有3个工作在FF3和IE7中.我记得,出于某种原因,我在精神上将最后两个标记为"要避免,只能部分工作".因此,我敢打赌只有第一个在IE6中工作的好钱.

澄清:"最好"的方法是我的例子#1,你的例子#2.