doctypeを使用する場合xhtml1-transitional.dtd
、次のHTMLでクレジットカード番号を収集します。
<input type="text" id="cardNumber" name="cardNumber" autocomplete='off'/>
W3C バリデーターで警告フラグが立てられます:
「autocomplete」属性はありません。
フォーム内の機密フィールドでブラウザのオートコンプリートを無効にする標準準拠の方法はありますか?
ベストアンサー1
こここれはMDCの優れた記事で、フォームの自動補完の問題点(と解決策)を説明しています。Microsoftも同様の記事を公開しています。ここ、 同じように。
正直に言うと、これがユーザーにとって重要なことであれば、このように標準を「破る」ことは適切であると思われます。たとえば、Amazon は「autocomplete」属性を頻繁に使用しており、うまく機能しているようです。
警告を完全に削除したい場合は、JavaScriptを使用して、属性をサポートしているブラウザ(IEとFirefoxが重要なブラウザです)に次のように適用することができます。someForm.setAttribute( "autocomplete", "off" ); someFormElm.setAttribute( "autocomplete", "off" );
最後に、サイトが HTTPS を使用している場合、IE は自動的にオートコンプリートをオフにします (私の知る限り、他のブラウザも同様です)。
アップデート
この回答はまだかなりの賛成票を獲得しているので、HTML5ではフォーム要素に「autocomplete」属性を使用できることを指摘したいと思います。ドキュメンテーションW3C でそれについて調べてください。