使用此html:
<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;
}
当鼠标悬停在Internet Explorer
的图像上时,光标不会更改为指针(手)有什么想法吗?
答案 0 :(得分:1)
尝试将此添加到您的CSS:
object{
pointer-events: none;
}
答案 1 :(得分:0)
TL; DR:这是因为IE8无法解释对象并将图像置于其位置。并且您以相反的方式描述了您的错误: - )< / p>
我确信这种行为与你所描述的完全相反 - 在IE 8中只有光标集ti pointer
,在我的其他浏览器中(FF,Chrome,IE 10 ...)光标是default
,即箭头。
我的解释是IE8无法解释SVG(IE无法解释版本9之前的SVG)并将图像显示为链接的一部分 - 并为其提供适当的光标pointer
,你的小提琴在CSS中冗余设置。但是,其他浏览器可以解释对象并正确显示它 - 并且不会给它你想要的光标,因为元素类型是对象(尝试将flash电影,例如YouTube视频放入{{1} }元素,看看会发生什么)。
最后一个细节:不需要使用a
选择器,当元素时,光标显示在元素上。是的,在元素上。
修改强>: Erik的评论非常好(粘贴在这里只是为了更快地参考):
您需要将光标规则放在svg中,而不是为了工作,因为这是事件将用于标记的位置。事件不会“冒泡”到父文档。如果您使用引用svg的引用也会有效,如下所示:jsfiddle.net/Mw8JX