web-dev-qa-db-ja.com

プレースホルダー:フィールドラベルまたはサンプルデータ?

一般的なフォームをデザインしています。すべての入力には、そのすぐ上にラベルが配置されています。

私の質問は、入力フィールドのプレースホルダーの使用についてです:

ラベルのリマインダー(例:ラベル:ユーザー名、プレースホルダー:ユーザー名を入力)またはサンプルデータを表示(例:ラベル:ユーザー名、プレースホルダー:chuckNorris)?

7
NicoINCH

データの例(ChuckNorris)ではなく、短いヒント(例では "Type your username")である必要があります。

これは、プレースホルダが、特に一目で、入力済みのフィールドと間違われる可能性があるためです。サンプルデータを表示するプレースホルダーがある場合、そのフィールドはすでに入力されていると考える人の可能性が高くなります。

現在の W3サイト は、次のアドバイスを提供します。

placeholder=文字列
ユーザーのデータ入力を支援することを目的とした短いヒント(単語または短いフレーズ)を表します。

注:それは言うことを続けます:

ヒントは、サンプル値または予期される形式の簡単な説明です。ヒントやその他の助言テキストが長い場合は、title属性がより適切です。

ただし、これは正しくありませんW3仕様の将来のバージョン で更新されています。これは、<title>これらの状況では、属性は適切または有用であるとは見なされなくなりました。更新されたアドバイスは(現在のドラフトから):

プレースホルダー属性は、ラベルの代わりとして使用しないでください。より長いヒントやその他の助言テキストについては、コントロールの隣にテキストを配置してください。
placeholderの代わりにlabel属性を使用すると、高齢者や認知機能、可動性のあるユーザーを含むさまざまなユーザーのコントロールのアクセシビリティと使いやすさが低下する可能性があります。細かい運動能力または視覚障害。コントロールのlabelによって提供されるヒントは常に表示されますが、placeholder属性で提供される短いヒントは、ユーザーが値を入力する前にのみ表示されます。さらに、placeholderテキストは事前に入力された値と間違われる可能性があり、一般的に実装されているように、プレースホルダーテキストのデフォルトの色は不十分なコントラストを提供し、個別の可視ラベルがないため、使用可能なヒット領域のサイズが小さくなりますコントロールにフォーカスを設定します。

したがって、プレースホルダーを使用する場合(そして、使用する場合はおそらく慎重に検討します)、それが例ではなくヒントであることを確認してください。ただし、フォームを正しいマークアップ(必要に応じて正しいラベルと説明文)で囲み、プレースホルダーのスタイルを設定して、それがデータではなくプレースホルダーであることを確認してください(ただし、アクセスできるほど十分なコントラストがあり、全体としてとんでもない偉業です!)

13
JonW