Иногда даже autocomplete = off может не помешать заполнить учетными данными в неправильных полях, но не в поле пользователя или псевдонима.
Этот обходной путь является дополнением к сообщению apinstein о поведении браузера.
исправление автозаполнения браузера в режиме «только для чтения» и возможность записи в фокусе (щелчок и вкладка)
<input type="password" readonly
onfocus="this.removeAttribute('readonly');"/>
Обновление:
Mobile Safari устанавливает курсор в поле, но не отображает виртуальную клавиатуру. Новое исправление работает, как и раньше, но обрабатывает виртуальную клавиатуру:
<input id="email" readonly type="email" onfocus="if (this.hasAttribute('readonly')) {
this.removeAttribute('readonly');
// fix for mobile safari to show virtual keyboard
this.blur(); this.focus(); }" />
Демонстрация в реальном времени https://jsfiddle.net/danielsuess/n0scguv6/
// UpdateEnd
Поскольку браузер автоматически заполняет учетные данные в неправильном текстовом поле!?
Я замечаю это странное поведение в Chrome и Safari, когда в поля одной и той же формы есть поля пароля. Полагаю, браузер ищет поле пароля для вставки сохраненных учетных данных. Затем он автоматически заполняет (просто догадываясь из-за наблюдения) ближайшее поле ввода текста, которое появляется перед полем пароля в DOM. Поскольку браузер является последним экземпляром, и вы не можете им управлять,
Это исправление только для чтения сработало для меня.