autocomplete:off大家都比较清楚是用来方式浏览器自动填充数据的,可是今天遇到一个比较恶心的问题,就是登陆页面输入用户密码之后(同意浏览器保存密码),就算设置了autocomplete:off,刷新页面还是存在用户名密码被自动填写的情况。

关键填充之后,输入框会变成黄色,浏览器使用了:-webkit-autofill设置了背景颜色,关键你还无法覆盖这个颜色,导致奇丑无比,那么如何才能避免被填充呢?

常规的autocomplete:off作用

假如你在一个页面上的form上填写了一些输入(input,radio,checkbox等),然后跳走了,返回的时候,你刚填写的输入会自动填充上,大概效果如下:

autocomplete:new-password解决浏览器缓存密码问题 gif autocomplete:new-password解决浏览器缓存密码问题

这个时候,如果你刷新的话,可以发现数据并没有填充,说明这只是一般的填充,通过在input/radio/checkbox等上直接设置autocomplete:off或者在form上设置autocomplete:off可以达到清除的效果。

密码的缓存

可是如果你的form里面含有password的时候,你就要小心了,这个时候浏览器有些时候会弹出一个对话框:

问你是否保存密码,当你点击保存之后,一般情况下,密码和输入框也不会自动被覆盖,但是我确实遇到了自动覆盖的情况:

autocomplete:new-password解决浏览器缓存密码问题 gif autocomplete:new-password解决浏览器缓存密码问题

当然,不确保是否是框架导致的自动填充,这里设置autocomplete:new-password可以解决这个问题,这里设置autocomplete还有一些非常偏的设置:例如nickname,username等,平常用的也不是很多,今天先纪录一下这个new-password,它可以用来清除浏览器对密码的保存。

其他文章

0
我要评论

评论

返回
×

我要评论

回复:

昵称:(昵称不超过20个字)

图片:

提交
还可以输入500个字