vant 密码输入框的隐藏图标之谜
问题:
在使用 vue3 的 vant 库时,用户在使用密码输入框时发现了一个奇怪的问题。当第一次聚焦到输入框时,输入框中会出现一个眼睛图标。然而,当失去焦点后再重新聚焦时,眼睛图标却消失了。这是否是 vant 中存在的 bug?
答案:
经过调查,发现此问题并不是由 vant 库引起的。相反,这是浏览器自身在密码输入框中添加的默认行为。浏览器会自动在密码输入框中显示一个切换密码可见性的眼睛图标。
立即学习“前端免费学习笔记(深入)”;
如何隐藏浏览器自带的眼睛图标:
如果你希望直接隐藏眼睛图标,可以使用以下 css 代码:
input[type="password"]::-webkit-toggle-password { /*chrome*/ -webkit-appearance: none!important; display: none!important; } input[type="password"]::-moz-ui-password { /*firefox*/ -moz-appearance: none!important; display: none!important; } input[type="password"]::-ms-reveal { /*edge*/ display: none!important; }
这个 css 规则会覆盖浏览器的默认样式,从而隐藏眼睛图标。