asl*_*lum 121 html forms labels
玛丽有一个小小的形状,它的字段就是这样标记的.
每当一个错误悄悄进入时,它就会产生混乱.
我为每个输入字段都有一个标签......相当标准的事情.验证表单后,我在表单顶部显示一个有用的小段落,详细说明哪些信息丢失或不正确.
我可以为同一个输入字段设置两个标签吗?一个是正确的形式,还有一个在验证提醒文本中?我有什么理由不这样做吗?
Jam*_*ers 142
我假设这个问题是关于HTML表单的.从规格:
LABEL元素可用于将信息附加到控件.每个LABEL元素只与一个表单控件相关联.
因此,每个表单控件可以由多个标签引用,但每个标签只能引用一个控件.因此,如果有一个控件的第二个标签是有意义的(在你描述的情况下,确实如此)可以随意添加第二个标签.
Rob*_*lan 35
HTML是合法的,它是有效的(点击任何标签会将焦点转移到相关字段).
出于可访问性原因,这样做有点棘手.
这不是一种"常见"方法,因此至少有一个常见的屏幕阅读器(我用NVDA测试过)只有在将焦点移到字段时才会读取第一个标签 - 它会忽略同一字段的任何其他标签.
因此,如果您的错误消息位于页面顶部,那么通过字段选择的盲人或弱视用户只会在登陆相关字段时听到错误消息,而不是旁边的"真实"标签.
因此 - 如果你正确地说出错误信息,这可能是一件好事(当然比仅用红色突出显示非验证字段更好!).
Ger*_*der 25
是的,您可以在同一个表单控件中指向多个标签.这是完全合法的:
<label for="fname">First name</label>
<label for="fname">Enter your info</label>
<label for="fname">Why not a third label</label>
<input type="text" id="fname" name="fname">
Run Code Online (Sandbox Code Playgroud)
这只是一个例子......通常你会用一个标签包裹这些行,因为它们很接近.