我们应该使用 <label> 每个 input? ,即使为了提交按钮,如果我们不想显示 label.

还是不需要标签提交按钮?

.hide {display:none}

<fieldset>
  <legend>Search</legend>
    <label for="Search">Search...</label>
      <input value="" id="Search" name="Search">
    <label for="Submit" class="hide">Submit</label>
      <input type="submit" value="Go!" name="submit" id="submit">
</fieldset>

否则我们应该这样使用(没有标签来提交)

<fieldset>
  <legend>Search</legend>
    <label for="Search">Search...</label>
      <input value="" id="Search" name="Search">
      <input type="submit" value="Go!" name="submit" >
</fieldset>
有帮助吗?

解决方案

否。不要将标签用于具有固有标签文本的元素(例如各种按钮)。 (注意:带有标签 value 属性不计数)。

请参阅描述部分 WCAG部分 就此主题而言。

其他提示

来自官方文档:

标签元素可用于将信息附加到控件上。每个标签元素与一个形式控制完全关联。

http://www.w3.org/tr/html4/interact/forms.html#edef-label

注意这个术语 或许 不是 一定是. 。但是,使用一个总是一个好主意 lable, ,事实证明这很方便:

  • 出于可访问性原因
  • 用于移动浏览器
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top