IE6悬停问题

时间:2010-04-03 11:15:47

标签: javascript html css internet-explorer internet-explorer-6

对于非链接的元素,CSS :hover在IE6中不起作用。有解决方法吗?例如如何将:hover应用于div

4 个答案:

答案 0 :(得分:8)

whatever:hover。我自己从未使用它,但从我听到的情况来看,它运作良好。

  

无论如何:hover是一个自动修补的小脚本:hover,:active和:专注于IE6,IE7和IE8的怪癖,让你像在任何其他浏览器中一样使用它们。版本3引入了ajax支持,这意味着任何通过javascript插入到文档中的html也会触发:hover,:active和:IE中的焦点样式。

答案 1 :(得分:5)

你可以使用Dean Edwards着名的IE7.js,它有很好的优势,你可以在你的CSS中使用:hover选择器。

除此之外,我怀疑你是否可以单独使用CSS来实现它。 IE可以通过expression()处理CSS文件中的JS,但是如果你抓住我的漂移,你就无法使用表达式来处理没有选择器处理悬停的悬停。

然后,最后,一个简短的jQuery解决方案:

$(document).ready(function () {
  $('div').hover(function () {
    $(this).addClass('hover');
  }, function () {
    $(this).removeClass('hover');
  });
});

然后你可以在样式表中使用它:

div:hover, div.hover { ... }

答案 2 :(得分:3)

  • 如果你只需要微妙的div 你没有使用jquery然后去 对于suckerfis js为@futta 建议。http://www.htmldog.com/articles/suckerfish/
  • 如果您计划将来在更多标签上使用悬停,并且不希望每次为此编辑js,请转到IE6中的 Whatever.htc 。正如@Pekka建议的那样。
Suckerfish vs. .htc
     我们拥有蓝色角落   Suckerfish,原始的轻量级,   可访问,跨浏览器,   符合标准:悬停模仿。   我在红色的角落里有'.htc' -   通过CSS访问的JavaScript文件   模仿:悬停。

     丁丁!

     

并且Suckerfish立即沉重   打击.htc的有效性 - .htc简单   不符合标准的CSS。

     

Oooo ...... .htc偷偷摸摸地狡猾的刺戳   无需额外的   选择器...

     

Suckerfish在环上反弹。   他比他的体重轻得多   对手。

     

和OH! IE 5.0勾拳!那是   什么.htc只是没有   要做的技巧,而Suckerfish   可以无缝地使用IE 5.0。

     

.htc很茫然!比赛是   过度! Suckerfish赢得积分! TKO!

在IE6中没有可用于此的纯粹且有效的CSS解决方案。

答案 3 :(得分:2)

suckerfish and it's offspring也为此目的提供了很好的轻量级替代品。