该CSS :hover
不工作在IE6对于不是链接元素。 有没有解决办法? 例如,我怎么应用:hover
到div
?
Answer 1:
有什么:悬停 。 我从来没有用它自己,但据我所知,它工作得很好。
不管:悬停是一个小的脚本,自动补丁:悬停:活跃:集中在IE6,IE7和IE8怪癖,让你使用它们,就像您在任何其他浏览器。 第3版介绍了Ajax支持,这意味着那个被插入到文档中的任何HTML通过JavaScript将还会引发的:hover,:active和:在IE中的焦点风格。
Answer 2:
您可以使用著名的IE7.js从院长爱德华兹,它有漂亮的优势,你可以使用:hover
在你的CSS选择器。
除此之外,我怀疑你可以用CSS单独实现它。 IE可以通过在CSS文件处理JS expression()
但你不能得到一个表达式来处理徘徊不选择处理徘徊,如果你明白我的意思。
然后,终于,短jQuery的解决方案:
$(document).ready(function () {
$('div').hover(function () {
$(this).addClass('hover');
}, function () {
$(this).removeClass('hover');
});
});
然后你就可以在你的样式表使用:
div:hover, div.hover { ... }
Answer 3:
- 如果你只需要paticulars股利和你不使用jQuery,然后去suckerfis JS作为@futta建议。 http://www.htmldog.com/articles/suckerfish/
- 如果你计划在将来使用悬停在更多的标签,并且不希望编辑每次JS这个在IE6中随时随地Whatever.htc。 作为@Pekka建议。
Suckerfish vs. .htc
IIIIN蓝色的角落里,我们有口鱼,原来轻巧,方便,跨浏览器,符合标准:悬停模仿。 IIIIN红色角落里,我们有“宏达” - 通过CSS访问模仿JavaScript文件:悬停。
顶顶!
而口鱼瞬间土地上.HTC的有效性沉重打击 - 宏达根本不符合标准的CSS。
呜...... .HTC钻进一个狡猾的刺拳,而不需要额外的选择...
周围环口鱼反弹。 他比他的对手重量轻得多。
哦! 在IE 5.0勾拳! 在这个时候,.HTC只是没有技能做的,而口鱼可以工作IE 5.0的无缝连接。
.HTC是茫然! 而比赛结束了! 口鱼胜点! TKO!
- 如果你想获得其他东西的利益(不哈弗等)也于IE浏览器 ,然后去
IE7.js
为@Boldewyn建议 - 如果你已经在使用jQuery和希望以有限的方式使用悬停,然后去是这样的: 如何使在minmal代码使用jquery对IE6的一个div悬停?
可这在IE6没有纯粹的和有效的CSS的解决方案。
一个非有效的CSS表达式的解决方案是有的,但我不会不建议使用这个,因为它的速度慢
解决方案: http://www.visibilityinherit.com/code/ie6-hover-expression.php
Answer 4:
口鱼和它的后代用于此目的provde伟大的轻量级替代品了。