2つの別々のinput
フィールドで構成されたタイムピッカーコンポーネントがあります。a11y:divでラップされた入力フィールド。ラベルに「idで」添付されています。
これは骨格が
<div> {/* component container */}
<div> {/* container for hours:minutes */}
<input /> {/* hours */}
<input /> {/* minutes */}
</div>
<Select /> {/* custom React component, for AM/PM */}
</div>
どのように見えるかすべては「通常の」ユーザーのための素晴らしい作品ですが、アクセシビリティが悪いです。
コードベースに既存の制限があるため、私はすべてをlabel
の中にラップするのは難しいので、私の問題を解決できます。
私は何をやってと思っていは次のとおりである、と私はこれは本当にスクリーンリーダーにとって有用であってもなくてもよいかどうかのコミュニティの入力を(HA!)したいと思います。
<label htmlFor="myUniqueId">Here goes my label</label>
<div id="myUniqueId"> {/* component container */}
<div> {/* container for hours:minutes */}
<input /> {/* hours */}
<input /> {/* minutes */}
</div>
<Select /> {/* custom React component, for AM/PM */}
</div>
だから、基本的には、代わりに入力の、コンテナにIDを設定し、htmlFor
を使用してラベルを付けます。
これはスクリーンリーダーでも機能しますか?