6

我正在开发一个需要使用 Internet Explorer 的“IE5 Quirks Mode”(使用设置X-UA-Compatible: IE=5)的旧版 Web 应用程序。

应用程序中的许多文本字段都有(应用程序生成的)“x”按钮来清除内容。在 IE10 中,IE 还会生成一个“x”按钮来清除字段,因此用户会看到其中两个。

本问题::-ms-clear所述,您可以使用CSS 伪元素删除 IE 生成的“x” 。不幸的是,这在 IE5 Quirks Mode 中似乎不起作用:::-ms-clear伪元素的样式在开发人员工具中显示为:unknown,并且 IE 生成的“x”继续出现。

除了重写应用程序以使用现代浏览器模式之外,有没有办法摆脱 IE 生成的“x”?

以下是在 IE10 下运行时重现 IE5 Quirks Mode 问题的测试页面:

<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=5">
        <style type="text/css">
            ::-ms-clear { width: 0; height: 0; }
        </style>
    </head>
    <body>Enter some text:<input></body>
</html>
4

1 回答 1

3

尝试

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

或者

input::-ms-clear { visibility: hidden; }

更骇人的 hack 可能是使用 margin-right 和 overflow 属性

input { margin-right: -20px; overflow: hidden }
于 2013-06-19T16:53:07.977 回答