【发布时间】:2014-02-27 12:06:27
【问题描述】:
我有一个奇怪的问题,即 svg 在 safari 中悬停时调整大小。我正在使用 jquery 的悬停来用稍微不同的 svg 替换页面上的 svg。这项工作在所有浏览器中都可以正常工作,除了 safari,由于某种原因,它会在 mouseover 和 mouseout 上完全调整 svg 的大小。
我的 svg 的高度是在 css 中设置的
img.svg-graphic {
height: 180px;
}
并以图片的形式显示在页面上
<div class="container">
<img class="svg-graphic" src="svg-icons/version1.svg">
</div>
当我将鼠标悬停在容器上时,我将 svg 换成另一个,然后在悬停时返回默认值。
$('.container').hover(function() {
$('.svg-graphic').attr('src', 'svg-icons/version2.svg');
}, function() {
$('.svg-graphic').attr('src', 'svg-icons/version1.svg');
});
关于什么可能导致 safari 完全忽略尺寸的任何想法?
【问题讨论】:
-
哇,我不会发疯的。有人知道吗?它与悬停无关 - 也发生在没有悬停的 iPad 上。如果您只是通过单击事件设置 src,它的大小也将不正确。 iOS8 等 1 周看看是否修复!
标签: javascript jquery css svg