当使用这个网站:
<a href="http://www.wikipedia.com">
<object data="http://upload.wikimedia.org/wikipedia/en/4/4a/Commons-logo.svg" type="image/svg+xml">
<img src="http://herdeirodocaos.files.wordpress.com/2007/11/wikipedia-logo.jpg" alt="Logo" />
</object>
</a>
结合这个CSS:
a {
display: block;
}
object, img {
width: 200px;
height: 200px;
}
object:hover {
cursor: pointer;
}
的jsfiddle
光标不改变为指针(手)当鼠标悬停在Internet Explorer中只有图像
任何想法?
尝试添加这对你的CSS:
object{
pointer-events: none;
}
TL; DR: 这是因为IE8无法解释的对象,然后将图像在它的位置来代替。 和你周围的描述你的错误的其他方式比它实际上是:-)
我很确信的行为是完全相反你的描述-在IE 8仅是设置光标TI pointer
,在我的其他浏览器(FF,Chrome浏览器,IE 10 ...),光标default
,即箭头。
我的解释是,IE8无法解释SVG(IE无法解释9版本之前,SVG)并显示图像为纽带的一部分-并给它适当的光标, pointer
,在你的小提琴在CSS中,重复设定。 其他浏览器,但是,可以理解的对象,并正确地显示它-不给你想要的游标,因为元素类型的对象(尽量把Flash影片,例如YouTube视频,到a
元素,看看怎么了)。
而最后一个细节:无需使用:hover
选择,显示光标移到元素只当它是...是的,在元素。
编辑 :由Erik的评论所说的那样非常漂亮(粘贴在这里只是为了更快参考):
你需要把光标规则SVG里面,而不是这个工作,因为那里的事件会去标签。 该事件不会“泡”到父文件。 这也将工作,如果你使用的是引用的SVG,如下所示:jsfiddle.net/Mw8JX