【发布时间】:2015-05-06 20:12:42
【问题描述】:
我有以下代码:
<style>
input:valid ~ .test {
border: 1px solid green;
}
input:invalid ~ .test {
border: 1px solid red;
}
input:valid {
border: 1px solid green;
}
input:invalid {
border: 1px solid red;
}
</style>
<input type="text" required />
<div class="test">test</div>
现在,如果您开始在文本框中输入内容,验证应该修改输入和“测试”div 的边框。这在 Chrome 中有效,但是在 IE 中,只有在我点击其他地方时才会触发“测试”div 边框更改。
为什么这在 IE 中表现不同?以及如何使其正常工作
编辑:potatopeelings 的回答是正确的,但我的问题似乎过于简化了。
input:valid ~ small .actionEmpty {
display: block;
}
input:invalid ~ small .actionEmpty {
display: none;
}
在显示 css 设置的情况下它似乎不起作用,无效的似乎起作用,而有效的并不奇怪。 mousedown 上的行为仍然存在
还有什么想法吗?
【问题讨论】:
-
我这里没有最新的 IE 可以测试,但恐怕你必须求助于 JavaScript 来捕捉一些击键。
-
这是 IE 处理输入行为的方式
标签: css internet-explorer siblings