我想在首次显示页面时隐藏“必需”消息。在FF和IE8上这是有效的,但由于某种原因,消息显示在IE7上。
这是HTML:
<div id="passwordDivRequired" class="requiredMsg">
<img src="images/required.png" />
Required
</div>
这是CSS:
.requiredMsg img{
width: 1.5em;
height: 1.5em;
position: relative;
bottom: -.4em;
}
div .requiredMsg {
color: #BF5754;
display: none;
}
答案 0 :(得分:9)
div .requiredMsg
选择具有class属性的任何元素,该属性包含作为div元素后代的词requiredMsg。
- http://penguin.theopalgroup.com/cgi-bin/css3explainer/selectoracle.py
摆脱后代选择器(空间)。
答案 1 :(得分:5)
1)这里有一个完美的描述:http://www.positioniseverything.net/explorer/ienondisappearcontentbugPIE/index.htm为了给出基本的要点,如果你的元素在页面加载后隐藏在一个动态隐藏然后显示的容器中,就会发生这种情况。该页面上有更多信息,一个很棒的演示和一些修复。
2)另一个更罕见但可能与IE7相关的故障:'显示:阻止'(由CSS设置)元素显示尽管在'显示:无'(由javascript设置)'div'元素内,而其他子元素没有设置的“显示”未按预期显示。在这种情况下,容器是一个'Position:fixed'div(也是由JS设置),而子是一个锚('a')。对我来说,唯一能修复它的是重构我的应用程序逻辑,以便在页面加载之前在CSS中应用'Display:None',而不是在Javascript之后。即使以后用javascript切换显示器,这也能正常工作。
一般情况下,在页面加载后隐藏内容时,IE&lt; = 7似乎在显示继承方面存在令人困惑的问题。
(随时编辑)