html解决浏览器记住密码输入框的问题


Posted in HTML / CSS onMay 07, 2023

在浏览器中提交表单后,浏览器一般会提示“是否需要记住密码”,确认后在下次提交表单的时候会自动填充某些输入框。

但是在某些情景下(例如在提现,充值的页面),自动填充密码就很不安全。需要采用一定的手段来阻止浏览器自动填充。

在解决的过程中遇到了一些坑,这里做一下笔记:

使用HTML属性 autocomplete="off"

由于自动填充这个特性是浏览器自己实现的,autocomplete这个属性也没有被写入W3C规范。很多浏览器都会直接忽略这个属性。无法禁用自动填充。

使用js在页面加载的时候设置input的value为空
很自然能想到的一个办法,但是浏览器的自动填充居然是在js执行完后再填充的。。。在使用js设置了input的value为空后,浏览器又把input自动填充,无法解决问题。

增加<input type=”password”/>

网上流传甚广的一个方法。这个方法在大部分版本的浏览器上是可行的,但是在某些高版本的浏览器和Safari中失效。后面介绍的几种方法都是基于这个方法的改进。

<!-- 额外增加的input -->
<input type="password" style="display:none"/>
<!-- 原先的input -->
<input type="password"/>

增加form

这个方法较上面那个解决了Safari下自动填充的问题。但是在某些高版本Chrome下失效。(经测试Chrome 46.0可行,Chrome 47.0失效)

<!-- 额外增加的form和input -->
<form style="display:none">
  <input type="password"/>
</form>
<!-- 原先的input -->
<input type="password"/>

最终解决方案

这个方案结合了上面两种方法,最终连Chrome 47.0下自动填充的问题也解决掉。

<!-- 额外增加的内容 -->
<form style="display:none">
  <input type="password"/>
</form>
<input type="password" style="width:0;height:0;float:left;visibility:hidden"/>
<!-- 原先的input -->
<input type="password"/>

这个方法中需要注意的是与目标input同辈的input不能设置成 display:none,如果设置后再Chrome 47.0上会自动填充,因此只能使用其他手段把这个input隐藏。

Summary

使用了最后一种方案后在各个浏览器中运行良好,暂时没发现出现自动填充的现象。果然前端的兼容性问题一直是一件让人恶心的事啊。。

到此这篇关于html解决浏览器记住密码输入框的问题的文章就介绍到这了,更多相关 html记住密码输入框内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS中简写属性要注意TRouBLe的顺序问题(避免踩坑)
Mar 09 HTML / CSS
css3中的calc函数浅析
Jul 10 HTML / CSS
纯CSS3制作的鼠标悬停时边框旋转
Jan 03 HTML / CSS
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
Mar 14 HTML / CSS
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
Sep 15 HTML / CSS
HTML5进阶段内联标签汇总(小篇)
Jul 13 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
Jul 20 HTML / CSS
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
Jul 09 HTML / CSS
HTML5获取当前地理位置并在百度地图上展示的实例
Jul 10 HTML / CSS
萌新HTML5 入门指南(二)
Nov 09 HTML / CSS
详解CSS中的特指度和层叠问题
Jul 15 HTML / CSS
使用CSS实现黑白格背景效果
Jun 01 HTML / CSS
使用CSS实现百叶窗效果示例代码
使用CSS实现按钮边缘跑马灯动画
使用CSS实现音波加载效果
table不让td文字溢出操作方法
Dec 24 #HTML / CSS
table设置超出部分隐藏,鼠标移上去显示全部内容的方法
Dec 24 #HTML / CSS
td 内容自动换行 table表格td设置宽度后文字太多自动换行
Dec 24 #HTML / CSS
HTML页面点击按钮关闭页面的多种方式
Dec 24 #HTML / CSS
You might like
用PHP和ACCESS写聊天室(五)
2006/10/09 PHP
php将会员数据导入到ucenter的代码
2010/07/18 PHP
非常好用的两个PHP函数 serialize()和unserialize()
2012/02/04 PHP
PHP编写daemon process详解及实例代码
2016/09/30 PHP
Joomla框架实现字符串截取的方法示例
2017/07/18 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
在Ajax中使用Flash实现跨域数据读取的实现方法
2010/12/02 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
jQuery Mobile页面跳转后未加载外部JS原因分析及解决
2013/03/18 Javascript
Javascript alert消息换行的方法
2013/08/07 Javascript
JavaScript  event对象整理及详细介绍
2016/10/10 Javascript
前端 Vue.js 和 MVVM 详细介绍
2016/12/29 Javascript
vue loadmore组件上拉加载更多功能示例代码
2017/07/19 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
JavaScript实现与web通信的方法详解
2020/08/07 Javascript
Windows下安装python2.7及科学计算套装
2015/03/05 Python
给Python入门者的一些编程建议
2015/06/15 Python
Python通过90行代码搭建一个音乐搜索工具
2015/07/29 Python
Numpy数组转置的两种实现方法
2018/04/17 Python
Python面向对象思想与应用入门教程【类与对象】
2019/04/12 Python
python同步两个文件夹下的内容
2019/08/29 Python
Python函数基本使用原理详解
2020/03/19 Python
基于matplotlib xticks用法详解
2020/04/16 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
python如何使用腾讯云发送短信
2020/09/17 Python
Python爬虫之Selenium下拉框处理的实现
2020/12/04 Python
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
HSRP的含义以及如何工作
2014/09/10 面试题
写自荐信要注意什么
2013/12/26 职场文书
优秀员工年终发言演讲稿
2014/01/01 职场文书
护理专业毕业生自荐信范文
2014/01/05 职场文书
社会实践活动报告
2015/02/05 职场文书
微信搭讪开场白
2015/05/28 职场文书