对于非链接的元素,CSS :hover
在IE6中不起作用。有解决方法吗?例如如何将:hover
应用于div
?
答案 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)
我们拥有蓝色角落 Suckerfish,原始的轻量级, 可访问,跨浏览器, 符合标准:悬停模仿。 我在红色的角落里有'.htc' - 通过CSS访问的JavaScript文件 模仿:悬停。 丁丁!Suckerfish vs. .htc
并且Suckerfish立即沉重 打击.htc的有效性 - .htc简单 不符合标准的CSS。
Oooo ...... .htc偷偷摸摸地狡猾的刺戳 无需额外的 选择器...
Suckerfish在环上反弹。 他比他的体重轻得多 对手。
和OH! IE 5.0勾拳!那是 什么.htc只是没有 要做的技巧,而Suckerfish 可以无缝地使用IE 5.0。
.htc很茫然!比赛是 过度! Suckerfish赢得积分! TKO!
IE7.js
作为@Boldewyn建议在IE6中没有可用于此的纯粹且有效的CSS解决方案。
可以使用一个无效的CSS表达式解决方案 但我不建议使用 这because it's slow
解决方案:http://www.visibilityinherit.com/code/ie6-hover-expression.php
答案 3 :(得分:2)
suckerfish and it's offspring也为此目的提供了很好的轻量级替代品。