当前位置: 首页 > 面试题库 >

伪类:hover在IE7中不起作用

徐君植
2023-03-14
问题内容

我有一个简单的代码

<div class="div1">
  <div class="div2">Foo</div>
  <div class="div3">
    <div class="div4">
      <div class="div5">
        Bar
      </div>        
    </div>
  </div>
</div>

和这个CSS:

.div1{
  position: relative;
}
.div1 .div3 {
  position: absolute;
  top: 30px;
  left: 0px;
  width: 250px;
  display: none;
}
.div1:hover .div3 {
  display: block;
}
.div2{
  width: 200px;
  height: 30px;
  background: red;
}
.div4 {
  background-color: green;
  color: #000;  
}
.div5 {}

问题是:当我将光标从.div2移到.div3.div3应该是可见的,因为它是的子级.div1)时,鼠标悬停被禁用了。我正在IE7中对其进行测试,在FF中它可以正常工作。我究竟做错了什么?我还意识到,当我删除.div5标签时,它就不起作用了。有任何想法吗?


问题答案:

IE7不允许您将:hover伪类应用于非锚元素,除非您明确指定doctype。只需在页面上添加一个doctype声明,它就可以正常工作。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">


 类似资料:
  • 我尝试创建一个jQuery函数.hover来通过使用另一个类并使用hover来修改div的背景颜色,方法是将hover用于addClass和removeClass。 HTML: CSS: JavaScript:

  • 问题内容: 我已经按照教程在我的应用程序中实现了路由 http://docs.angularjs.org/tutorial/step_07 我无法在IE7中使用我的版本,花了一段时间尝试找出我错过/做错的事情后,我注意到该示例不起作用。 http://angular.github.com/angular- phonecat/step-7/app/ 有人知道如何使它工作吗? 问题答案: 好的,我遇到

  • 问题内容: 我需要添加一个表的2个单元格内容并显示它。下面的JavaScript命令在chrome或IE10中可以正常工作。 但不能在IE8或7中使用 。 结果, N 您能否告诉我 IE7或IE8中 的 等效命令 是什么 , 以读取表的单元格内容并将其转换为float然后添加。 问题答案: IE7 /8不支持textContent。后者具有称为innerText的不同属性,该属性返回DOM节点的文

  • 问题内容: 我已经为h2标签设置了一些样式(颜色,字体大小等),但是当我在其中放置“ A”标签时,样式就会作为链接。我的html: 因此,如您所见,我创建了“ no-decor”类。它应该继承h2的“ a”标签样式。 在Firefox上,一切都可以,但IE仍显示标记“ a”样式(带下划线的文本装饰和蓝色)。我知道,我可以为“ h2 a”设置某种样式,但是也许可以通过某种方式在IE7上强制CSS继承

  • 问题内容: 在iPhone / iPad / iPod上的Webkit中,点击元素时不会触发为标签的:active伪类指定样式。我该如何触发?示例代码: 问题答案: … 仅应用了一次,而不是每个按钮元素都可以修复页面上的所有按钮。另外,您可以使用这个名为’Fastclick’的小型JS库。它可以加快触摸设备上的点击事件,也可以解决此问题。

  • 问题内容: 我制作了一个Jquery函数,该函数(目前)会动态调用该函数,并显示警告。与Firefox,铬:它的作品!当我尝试IE7(第一次)时,它失败了。如果我重新加载页面(F5)并重试,则可以!o_O 我终于明白为什么会这样。在我的旧网站中,我使用了jquery-1.3.2.min.js库。在此我使用jquery-1.4.2.js,实际上它不起作用。那么这是什么一回事?这个新版本中有错误吗?