Как отключить или настроить автозаполнение полей
Короткий ответ
Атрибут autocomplete="off" просит браузер не подсказывать ранее введённые значения:
<input name="code" autocomplete="off" placeholder="One-time code">Можно поставить его и всей форме: <form autocomplete="off">.
Лучше подсказать, чем запретить
Чаще автозаполнение не мешает, а помогает — нужно лишь сказать браузеру, что в поле. Тогда он подставит правильные данные одним касанием:
<form style="display: grid; gap: 6px; max-width: 260px;">
<input name="name" autocomplete="name" placeholder="Full name">
<input name="email" type="email" autocomplete="email" placeholder="Email">
<input name="phone" type="tel" autocomplete="tel" placeholder="Phone">
</form>Самые нужные значения: name, email, tel, street-address, postal-code, cc-number, one-time-code, current-password, new-password.
Пароли
При регистрации и смене пароля ставьте autocomplete="new-password": браузер предложит придумать надёжный пароль, а не подставит старый. Для входа — current-password.
Частая ошибка
autocomplete="off" ставят полю пароля, чтобы «защитить» его. Браузеры такую просьбу для паролей игнорируют, а если бы выполняли, пользователи придумывали бы простые пароли, которые легко запомнить. Не мешайте менеджерам паролей — помечайте поля правильными значениями.
Функции из этого ответа
- autocomplete — Подсказывает браузеру, какие сохранённые данные подставить в поле.
- <input> — Поле ввода; вид поля задаёт атрибут `type`.
- <form> — Форма: собирает данные из полей и отправляет их на сервер.
- spellcheck — Включает или выключает проверку орфографии в поле.