使用占位符代替标签
Using placeholder instead of label
谈到辅助功能时,不使用占位符代替标签是一种常见的做法,因为在字段中输入内容后,占位符就会消失。但是如果我的占位符之后充当视觉标签呢?
在这种情况下仅使用占位符来代替实际的标签仍然可以吗?如果是这样,我还需要用 aria-label 标记它吗?
我不建议使用 placeholder
属性或其他容器来代替 <label>
元素。
这不是您描述的 "visual label" 的问题。 <label>
元素在 data-level.
处以编程方式与 <input>
元素相关联
<label for="middle-initial">Middle Initial</label>
<input id="middle-initial">
placeholder
属性基本上对屏幕阅读器不可见,因此它可以与 <label>
结合使用,但不应替代 <label>
。
如果您真的不喜欢页面上 <label>
的视觉效果,您可以 position the text off screen using CSS,或者如果您目前正在使用 bootstrap,您可以使用 .sr-only
class.
谈到辅助功能时,不使用占位符代替标签是一种常见的做法,因为在字段中输入内容后,占位符就会消失。但是如果我的占位符之后充当视觉标签呢?
在这种情况下仅使用占位符来代替实际的标签仍然可以吗?如果是这样,我还需要用 aria-label 标记它吗?
我不建议使用 placeholder
属性或其他容器来代替 <label>
元素。
这不是您描述的 "visual label" 的问题。 <label>
元素在 data-level.
<input>
元素相关联
<label for="middle-initial">Middle Initial</label>
<input id="middle-initial">
placeholder
属性基本上对屏幕阅读器不可见,因此它可以与 <label>
结合使用,但不应替代 <label>
。
如果您真的不喜欢页面上 <label>
的视觉效果,您可以 position the text off screen using CSS,或者如果您目前正在使用 bootstrap,您可以使用 .sr-only
class.