网站首页 > 基础教程 正文
今天在写注册页面的时候发现一个奇怪的现象,在input框中输入密码之后会在后面出现一个眼睛图标(我并没有写这个功能)。点击图标之后会显示input框中的密码,再次点击会继续隐藏input框中的密码。密码显示按钮可协助用户确认输入内容,避免出现密码输入错误。但是这个密码显示按钮只会在开始输入的时候才会显示,当鼠标离开输入框之后就会自动隐藏。再次聚焦输入框输入时不会再次显示,需要删除输入内容之后再次输入才会触发密码显示按钮。这个用户体验并不怎么友好,而且换chrome浏览器测试时又没有(郁闷...!)。
发现问题
通过对多款浏览器的测试发现这种现象主要在IE、Edge和IE兼容模式中出现,Chrome、FireFox、Opera、Safari等浏览器都没有出现。后来在网上查了下都说是微软为了增强用户在触控屏幕上使用浏览器的体验对用户输入操作做了优化,为 <input>标签提供了快速清除钮( type="text"出现X图标,IE有,Edge没有)和密码文字显示钮( type="password"出现小眼睛图标,IE、Edge都有)的功能。但是这个体验并不怎么友好, 而且如果我们在项目中已经设计了密码查看模式就会与浏览器默认图标重叠。
禁用input自带图标
主流的浏览器的种类很多,我们当然希望统一设计风格。所以通常密码查看功能我们会在项目中自行开发,微软这个功能对我们来说反而会出现冲突,是否可以关闭这个功能呢?还好微软在为其浏览器添加该功能的同时也提供了对应的CSS私有属性,通过CSS的双伪类就可以将input自带图标清除。目前只有IE浏览器支持此双伪类,所以不指定input也可以实现。
/*清除text文本输入框的清除图标*/
input::-ms-clear{
display: none;
}
/*清除password密码输入框的明文图标*/
input::-ms-reveal{
display: none;
}
//-------------- 或者 -------------
::-ms-clear, ::-ms-reveal{display: none;}
猜你喜欢
- 2024-11-13 如何进入电脑BIOS设置并进行调整的详细指南
- 2024-11-13 IT兄弟连 HTML5教程 HTML5做到了与之前版本的兼容
- 2024-11-13 Js基础7:表单元素属性 jquery中表单的对象属性
- 2024-11-13 如何在电脑和手机上禁用输入法设置详解
- 2024-11-13 解决移动端点击Input呼出键盘页面被顶起和压缩问题
- 2024-11-13 如何快速有效地关闭电脑和手机输入法
- 2024-11-13 前端小知识:查漏补缺,盘点和toggle相关的几个API
- 2024-11-13 除了AI,Windows 11 24H2最值得期待的6个新功能
- 2024-11-13 Java-WEB考点 java web 考试题
- 2024-11-13 文本框input禁用自动完成、默认值设置、只读属性设置
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- deletesql (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)