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 相关文章推荐
CSS3教程(7):CSS3嵌入字体
Apr 02 HTML / CSS
CSS3+font字体文件实现圆形半透明菜单具体步骤(图解)
Jun 03 HTML / CSS
CSS3用@font-face实现自定义英文字体
Sep 23 HTML / CSS
使用CSS3在触屏上为按钮实现激活效果
Sep 27 HTML / CSS
一款基于css3和jquery实现的动画显示弹出层按钮教程
Jan 04 HTML / CSS
基础的CSS3弹性盒Flexbox布局使用实例
Apr 08 HTML / CSS
深入剖析webstorage[html5的本地数据处理]
Jul 11 HTML / CSS
Html5游戏开发之乒乓Ping Pong游戏示例(一)
Jan 21 HTML / CSS
HTML5拖放效果的实现代码
Nov 17 HTML / CSS
html5中canvas图表实现柱状图的示例
Nov 13 HTML / CSS
canvas画图被放大且模糊的解决方法
Aug 11 HTML / CSS
使用canvas实现雪花飘动效果的示例代码
Mar 30 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
如何使用Strace调试工具
2013/06/03 PHP
PHP实现的多文件上传类及用法示例
2016/05/06 PHP
PHP验证类的封装与使用方法详解
2019/01/10 PHP
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
2013/06/05 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
jQuery使用height()获取高度需要注意的地方
2014/12/13 Javascript
js+css实现上下翻页相册代码分享
2015/08/18 Javascript
JS公共小方法之判断对象是否为domElement的实例
2016/11/25 Javascript
easy ui datagrid 从编辑框中获取值的方法
2017/02/22 Javascript
ES6新特性之Object的变化分析
2017/03/31 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
JS实现的将html转为pdf功能【基于浏览器端插件jsPDF】
2018/02/06 Javascript
JavaScript类的继承操作实例总结
2018/12/20 Javascript
javascript实现点击星星小游戏
2019/12/24 Javascript
jQuery+ajax实现用户登录验证
2020/09/13 jQuery
在Python的Django框架中使用通用视图的方法
2015/07/21 Python
python中requests和https使用简单示例
2018/01/18 Python
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
Django框架静态文件使用/中间件/禁用ip功能实例详解
2019/07/22 Python
Django上线部署之IIS的配置方法
2019/08/22 Python
python批量处理文件或文件夹
2020/07/28 Python
Python合并2个字典成1个新字典的方法(9种)
2019/12/19 Python
python 实现提取log文件中的关键句子,并进行统计分析
2019/12/24 Python
Pytorch根据layers的name冻结训练方式
2020/01/06 Python
python实现交并比IOU教程
2020/04/16 Python
python中_del_还原数据的方法
2020/12/09 Python
PatPat阿根廷:妈妈们的购物平台
2019/05/30 全球购物
探索欧洲最好的品牌:Bombinate
2019/06/14 全球购物
个人考核材料
2014/05/15 职场文书
个人安全承诺书
2014/05/22 职场文书
诚信承诺书模板
2014/05/26 职场文书
女生节标语
2014/06/26 职场文书
关于感恩的演讲稿800字
2014/08/26 职场文书
2014学校领导四风对照检查材料思想汇报
2014/09/23 职场文书
2015年高校图书馆工作总结
2015/04/30 职场文书
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/07 其他游戏