508 Standards, Section 1194.22 (a)声明:
每个非文本的等效文本 应提供元素(例如,通过 “alt”,“longdesc”或元素 含量)。
对于搜索框,请使用
<input type="text" alt="Search" value="" tabindex="1" name="s" id="s" />
通过508标准,但未通过HTML 5验证。
使用<label>
标记是传递508标准和HTML 5验证的唯一方法,因为我希望避免使用不必要的<label>
标记吗?
答案 0 :(得分:4)
我认为在这种情况下你需要更多关注1194.22(n)。如果你真的,迫切需要没有单独的标签,你可以尝试这样的事情:
<input type="search" value="" tabindex="1" name="s" id="s" />
<label for="s"><input type="submit" value="search"></label>
但我强烈建议至少在屏幕阅读器中尝试这一点(NVDA是免费的,JAWS可以在'免费试用'中使用40分钟),或者更好的是,设置一个测试页面,让一些屏幕阅读器用户尝试它。
或者您可以investigate aria-labelledby
并查看是否允许您更自然地适应您的标签。