从 Internet Explorer 中删除清除和显示密码图标

Posted

技术标签:

【中文标题】从 Internet Explorer 中删除清除和显示密码图标【英文标题】:Removing the clear and reveal password icons from Internet Explorer 【发布时间】:2013-06-04 17:34:34 【问题描述】:

我有这样的设计,用户在input type=text 中输入一些文本,并通过 jQuery 进行验证。现在,当用户输入一些数据时,IE10 会显示一个X 符号以清除文本框,但设计上它与自定义设计的X 图像重叠,并且眼睛图标也与密码字段的自定义设计重叠。

我尝试将::-ms-clear 用于input type=text::-ms-reveal 用于input type=password,但不幸的是,它什么也没做。我已经读过,只能通过从系统中无用的某个地方禁用它来删除它。

谁能帮助我或指导我解决此问题或告诉我如何解决此问题?

【问题讨论】:

请在 Jsfiddle 上分享代码,以便有人可以帮助您 【参考方案1】:

两个问题。首先,你确定你的 CSS 是正确的,因为以下 CSS 对我有用:

::-ms-reveal 
    display: none;

第二个问题:你是在开发者工具下以IE9或以下模式运行IE10吗?如果是这样,则此选择器似乎不起作用,并且 IE10 仍会插入密码眼。我现在正在寻找解决该问题的方法。

【讨论】:

【参考方案2】:

以下 CSS 对我有用

input::-ms-clear, input::-ms-reveal 
    display: none;

有关更多信息,请参阅 ::-ms-clear::-ms-reveal

【讨论】:

【参考方案3】:

当您不在兼容模式下运行时,给出的答案是很好的解决方案。这应该很好用:

::-ms-reveal 

    display: none;

不幸的是,当您在兼容模式下运行时,几乎没有好的解决方案。正如您在此处看到的,这些 css 选择器在兼容模式下不起作用:https://connect.microsoft.com/IE/feedback/details/783743

您可以尝试用图像覆盖它。根据您的应用程序的使用环境以及需要向多少人推出应用程序,您还可以编辑注册表以禁用 IE 中的显示/清除功能。你可以这样做:

    打开记事本.exe

    将此添加到文件中:

    Windows 注册表编辑器版本 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Internet Explorer\Main] "DisablePasswordReveal"=dword:00000001

    另存为 DisablePwPeekW7.reg

    双击刚刚创建的文件,接受。登录并验证。

查看这里了解更多信息:https://superuser.com/questions/578611/remove-eye-symbol-from-windows-7-ie10-password-field

【讨论】:

以上是关于从 Internet Explorer 中删除清除和显示密码图标的主要内容,如果未能解决你的问题,请参考以下文章

css 从Internet Explorer和Chrome输入类型搜索中删除X.

从 Internet Explorer 中的 AJAX 响应中删除 SCRIPT 标记

如何从 Internet Explorer 11 降级到 Internet Explorer 10?

innerHTML 删除 Internet Explorer 中的属性引号

如何删除仅在 Internet Explorer 中出现在导航菜单中的项目符号?

Google DFP Refresh Ads 删除了 Internet Explorer 10 中的 window.history 堆栈