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个性化字体_动力节点Java学院整理
Jul 12 HTML / CSS
css3过渡_动力节点Java学院整理
Jul 11 HTML / CSS
你正在寻找的CSS3 动画技术
Jul 27 HTML / CSS
利用CSS3实现文字折纸效果实例代码
Jul 10 HTML / CSS
CSS3 input框的实现代码类似Google登录的动画效果
Aug 04 HTML / CSS
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
Feb 24 HTML / CSS
纯CSS3实现圆圈动态发光特效动画的示例代码
Mar 08 HTML / CSS
canvas实现有递增动画的环形进度条的实现方法
Jul 10 HTML / CSS
使用html2canvas将页面转成图并使用用canvas2image下载
Apr 04 HTML / CSS
HTML5 canvas标签实现刮刮卡效果
Apr 24 HTML / CSS
一文彻底解决HTML5页面中长按保存图片功能
Jun 10 HTML / CSS
微信小程序canvas实现水平、垂直居中效果
Feb 05 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根据ip查询所在地区(非常有用,赶集网就用到)
2013/07/01 PHP
php 注册时输入信息验证器的实现详解
2013/07/05 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
YII使用url组件美化管理的方法
2015/12/28 PHP
ThinkPHP表单令牌错误的相关解决方法分析
2016/05/20 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
2018/05/25 PHP
PHP Cli 模式设置进程名称的方法
2019/06/12 PHP
JavaScript 权威指南(第四版) 读书笔记
2009/08/11 Javascript
Dom与浏览器兼容性说明
2010/10/25 Javascript
jQuery Ajax 全局调用封装实例代码详解
2016/06/02 Javascript
AngularJS 表达式详细讲解及实例代码
2016/07/26 Javascript
几行js代码实现自适应
2017/02/24 Javascript
理解nodejs的stream和pipe机制的原理和实现
2017/08/12 NodeJs
Bootstrap图片轮播效果详解
2017/10/17 Javascript
JS抛物线动画实例制作
2018/02/24 Javascript
微信小程序实现弹出菜单功能
2018/06/12 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
js操作table中tr的顺序实现上移下移一行的效果
2018/11/22 Javascript
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
python中readline判断文件读取结束的方法
2014/11/08 Python
python通过ssh-powershell监控windows的方法
2015/06/02 Python
全面了解Python环境配置及项目建立
2016/06/30 Python
python实现各进制转换的总结大全
2017/06/18 Python
Python中协程用法代码详解
2018/02/10 Python
numpy中的高维数组转置实例
2018/04/17 Python
对python中dict和json的区别详解
2018/12/18 Python
python安装pil库方法及代码
2019/06/25 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
使用python分析统计自己微信朋友的信息
2019/07/19 Python
Django 静态文件配置过程详解
2019/07/23 Python
canvas探照灯效果的示例代码
2018/11/30 HTML / CSS
澳大利亚电子产品购物网站:Dick Smith
2017/02/02 全球购物
南非最大的花卉和送礼服务:NetFlorist
2017/09/13 全球购物
环境工程求职简历的自我评价范文
2013/10/24 职场文书
高中生学习计划书
2014/09/15 职场文书
2014年应急工作总结
2014/12/11 职场文书