Internet Explorer 10 Windows 8删除文本输入和密码操作图标


70

我正在Windows 8的Internet Explorer 10中测试高度自定义的Web应用程序,因为它是一个即将发布的版本,并且有一天可能会使用我的应用程序。看一下该应用程序中一些文本输入控件的示例屏幕快照:

在此处输入图片说明

在HTML或CSS中,是否可以删除位于文本和密码输入控件右侧的操作图标?

感谢您的时间。

Answers:


105

您需要使用-ms-clear伪元素。并将-ms-reveal用作密码框。

应该这样做:

  ::-ms-clear {
      display: none;
  }

5
我必须承认,jeffamaphone给出的答案在IE7-9模式下在IE中不起作用。但是,在IE 10中效果很好。
inkwai 2012年

14
好吧,它在IE7-9中不存在。这些装饰器在兼容模式下显示可能是一个错误。我将不得不登上一座山,摄取一些当地草药,然后在其上冥想几天,而我没有时间这样做。在乡亲connect.microsoft.com/ie威力,不过,如果你提交一个bug存在。
i_am_jorf 2012年

带有以下元标记的网站的Win8 IE10:<meta http-equiv =“ X-UA-Compatible” content =“ IE = 7”>也不起作用。大概是因为::选择器没有被解释。:这里的话题另一个线程answers.microsoft.com/en-us/ie/forum/ie10-windows_8/...
jfroom

@pure_code::是伪元素的CSS3前缀。w3.org/TR/css3-selectors/#pseudo-elements
Matt Ball

@pure_code阅读了我们正在评论的答案。这就是您所需要的。
马特·鲍尔

22

由于此答案中的原因,您应该改用它。

/* don't show the x for text inputs */
::-ms-clear {
    width : 0;
    height: 0;
}

/* don't show the eye for password inputs */
::-ms-reveal {
    width : 0;
    height: 0;
}

5

除非浏览器处于兼容模式,否则jeffamaphone的答案有效:

您需要使用-ms-clear psuedo-element。并将-ms-reveal用作密码框。

应该这样做
:::-ms-clear {display:none;
}

但是,当浏览器处于兼容模式时,显示图标仍会出现。要解决此问题,请使用此标记<meta http-equiv =“ x-ua-compatible” content =“ IE = edge”>强制浏览器进入IE10模式。


我正在看一个页面,唯一的样式是,::-ms-reveal { display: none; }并且我处于兼容模式,而且没有眼睛(删除样式会使它恢复原状)。我在IE10 Win7上。
CWSpear13年

如果我停留在需要与IE7兼容的页面上,有什么方法可以使其工作?现在,css-es被忽略了(我仍然可以看到x)。
kaczor1984

2

从Internet Explorer 10中的文本字段中删除操作图标,只需使用此CSS伪元素

 ::-ms-clear { 
  display: none; }

从Internet Explorer 10的密码字段中删除操作图标,只需使用此CSS伪元素

::-ms-reveal
 {
   display: none; 
  }

4
只是为了学究,这些都是伪元素,而不是类。
克里斯,

爱我一些学究!
vbullinger

0

我没有Windows 8预览,但是您是否尝试过使用HTML和CSS创建自定义输入字段?也许尝试一下:http : //www.webdesign4me.nl/Knowledge-Base/custom-input-field-using-html-and-css


上面的示例是一个自定义的文本输入,带有圆角,红色边框和框阴影。“标准”文本输入看起来与以前版本的IE / Windows并没有太大区别。我只是想删除我在上图中指出的操作图标。不幸的是,在您给我的链接中,Windows 8仍然应用了操作图标。
Oliver Spryn 2012年

0

以前已发布IE10-docmode“标准”解决方案。

我偶然发现了一种独立于IE10-docmode的解决方法。如果您可以将所有输入的宽度最大更改为80像素,请使用以下jquery:
$("input[type=text]").width(80);


我想知道是否有一种方法可以对填充/边距做一些类似的事情。尚未发现任何东西。除了“在x上隐藏div幻灯片”,我只是不会做。
vbullinger

0

也许不是最好的解决方案,但是如果此页面上的任何其他解决方案都不适合您,请尝试此操作。

在输入之前的::上放置空白背景图像。更具体地说-我有自己的清晰按钮,其样式类似于网站,而IE则是其自身的基础。我用透明图标更改了原始的透明PNG,并带有纯色背景。

其他浏览器没有区别,它阻止了IE清除按钮。我想只有在输入背景颜色不变的情况下才有效。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.