Html CSS规则::-ms clear伪元素未出现在IE11开发工具中,规则不总是有效?
我有一个特殊的问题,与Windows7上IE11中针对MS特定伪元素的CSS问题有关 为了消除IE11表单中大多数输入元素右边缘的“clear/X”按钮,我添加了一个简单的CSS样式规则,如下所示:Html CSS规则::-ms clear伪元素未出现在IE11开发工具中,规则不总是有效?,html,css,internet-explorer-11,ie11-developer-tools,Html,Css,Internet Explorer 11,Ie11 Developer Tools,我有一个特殊的问题,与Windows7上IE11中针对MS特定伪元素的CSS问题有关 为了消除IE11表单中大多数输入元素右边缘的“clear/X”按钮,我添加了一个简单的CSS样式规则,如下所示: INPUT::-ms-clear{ display: none; } 这似乎工作得很好——直到有人在有问题的网站上看到这种风格应该删除的按钮。因此,我开始用IE11开发工具调试这个问题,当我加载有问题的页面时(我的实例中没有预期的“x”),我当然希望在“样式”窗格中看到上面的样式规则,但没
INPUT::-ms-clear{
display: none;
}
这似乎工作得很好——直到有人在有问题的网站上看到这种风格应该删除的按钮。因此,我开始用IE11开发工具调试这个问题,当我加载有问题的页面时(我的实例中没有预期的“x”),我当然希望在“样式”窗格中看到上面的样式规则,但没有这样的运气
在百灵鸟中,我尝试在开发工具中添加此作为内联样式,但IE11表示它不会应用-被划掉-但我找不到任何其他样式可以胜过它。禁用页面的所有样式仍会禁用此伪元素样式。所以现在,我不确定如果我的样式规则没有被应用,为什么“清除”按钮不会出现
我被难住了。我有三个IE11实例,相同的版本,相同的安装源,其中两个以不同的方式呈现来自同一站点的同一页面,并且显然不一致地遵守(或不遵守???)这个样式规则(或根本不遵守)。我只是不明白为什么——或者为什么规则没有出现在开发工具中。可能只是一个浏览器错误???我发现最好将宽度和高度设置为0px。否则,IE10将忽略字段上定义的
填充
,右填充
,该字段用于防止文本在我覆盖在输入字段上的“X”图标上键入
我猜IE10/11在内部将输入的填充权
应用到:--ms clear
伪元素,而隐藏伪元素不会将填充权
值恢复到输入
尝试此代码
input[type=text]::-ms-clear{
width:0;
height:0;
}
或
阅读更多关于psuedo元素的信息唉,IE11 F12工具不会在样式窗格中显示
:-ms clear
,即使它们已应用于元素。这是我们想要解决的问题。我们发现了这个问题的原因
当在两个不同的站点(localhost和testsite)上打开两个针对同一页面的浏览器时,一个带有“clear”小部件,另一个没有,我们还注意到呈现的HTML是不同的,从DOCTYPE声明开始。打开了灯泡模拟模式。仿真模式告诉我们,测试盒上的IE实例正在以兼容模式呈现页面,因为它是“在我们的Intranet上”的站点,并且选中了“在兼容视图中呈现Intranet上的所有站点”选项。取消选中此框,然后“清除”槽口将符合我们的风格并消失
问题解决了
谢谢大家的意见。如果这不是正确的语法,那么可能需要有人对此处的答案进行修改,这是使用该语法的公认答案。我现在更困惑了,而其他的建议也没什么不同。谢谢你的帮助!尝试了我在这里写的两个代码?好吧,那就去找其他的解决方案吧!是的,请记住这也是针对IE11的,而不是IE10的,因此,如果这引起了任何注意的话……:)好的,你看过这个链接了吗?是的,对构建CSS非常熟悉,为这个网站准备了大量的表单,只是在IE11的一个测试用例中遇到了困难。我们现在开始怀疑这是与浏览器版本有关的一次性问题/错误,还注意到在“开发工具”窗格中存在非常细微的UI差异。这至少对我不必担心为什么在“样式”窗格中看不到它们是有帮助的!现在如果我能弄清楚为什么我们会在其他特定的案例中看到它们。。。
input[type=text]::-ms-clear{
display:none;
}