CSS变换缩放悬停Chrome



我使用CSS transform:scale(2.0);使图表中的点动起来。这个效果在Safari中是预期的,但在Chrome和IE中,圆点在悬停时被剪切。

这不会发生在一个空白的HTML文档,只是在这个图中,有人知道一个解决方案吗?或者没有一个像样的jQuery替代品。

这些点绝对位于图表内

开发在www.craigscott.net/succeed

感谢

通用地图链接样式

.link-box {width:20px; height:20px; position: absolute; cursor: pointer; background-color:  white; border-radius: 50%; 
-moz-transition: all 0.1s ease; -webkit-transition: all 0.1s ease; }

.link-box:hover { -webkit-transform:scale(2.0); 
-moz-transform:scale(2.0);
-o-transform:scale(2.0);
transform:scale(2.0);
transform-origin:50% 50%;
-ms-transform-origin:50% 50%; /* IE 9 */
-webkit-transform-origin:50% 50%; /* Safari and Chrome */
-moz-transform-origin:50% 50%; /* Firefox */
-o-transform-origin:50% 50%; /* Opera */
}

所有点的位置

.mobile-link {bottom:100px; right:135px;}
.mobile-link:hover {bottom:100px; right:135px;}
.visualization-link {bottom:270px; right:70px;}
.UEANDE-link {bottom: 165px; right:45px;}
.support-link {top:110px; left:170px;}
.tech-support-link {top:50px; left:265px;}
.data-govern-link {top:108px; right:175px;}
.payroll-link {left:135px; bottom:98px;}
.CRM-link {left:48px; bottom:165px;}
.HCMC-link {left:70px; top:252px;}
.semantic-link {right:82px; top:200px;}
.op-mod-link {right:30px; top:217px;}
.gameification-link {right:25px; top:270px;}
.jquery-link {right:85px; bottom:85px;}
.portal-link {right:40px; bottom:115px;}
.dashboard-link {right:0px; bottom:148px;}
.alerts-link {right:10px; bottom:200px;}
.support-pack-link {left:175px; top:57px;}
.psoft-link {left:128px; top:82px;}
.upgrades-link {left:130px; top:138px;}
.tech-services-link {left:220px; top:28px;}
.integration-link {left:265px; top:0px;}
.saas-link {left:310px; top:28px;}
.mdm-link {right:130px; top:83px;}
.data-quality-link {right:177px; top:60px;}
.screening-link {right:132px; top:136px;}
.PSGP-link {left:85px; bottom:82px;}
.RTI-link {left:125px; bottom:47px;}
.PAE-link {left:175px; bottom:67px;}
.CX-link {left:0px; bottom:147px;}
.HR-Help-link {left:10px; top:323px;}
.Event-link {left:62px; top:302px;}
.dynamic-link {left:22px; top:270px;}
.fusion-link {left:30px; top:220px;}
.PSHCM-link {left:80px; top:205px;}

我只是找到一个简单的方法,消除所有转换:规模头痛然后写

.link-box-child:hover {
   width:40px;
   height:40px;
   margin:-10px;
   position:absolute;
   padding:0px;
  }

我会使用jQuery CSS3效果框架,如jQuery Transit来处理你的缩放/转换。

此外,它为你处理跨浏览器的问题。恕我直言,它使事情更有条理,更容易维护。看起来你在做的事情很酷,但如果你不小心,可能很快就会失控。

例子:

$(".box").hover( function () {
    $('.box').transition({ scale: 2.0 });
    $('.box').transition({ x: '40px' });
}, function () {
    $('.box').transition({ scale: 1.0 });
    $('.box').transition({ x: '-40px' });
});

JS提琴示例

我知道这不是你问题的确切解决方案,但如果你坚持一个坚实的框架来处理CSS3动画/效果的混乱,你可能会发现走这条路更容易。

编辑:更新小提琴更像你的例子树"点":

JS小提琴示例2

Javascript:

$(".link-box").hover( function () {
    $('.link-box').transition({ scale: 2.0, x: '-40%' }, 'fast');
}, function () {
    $('.link-box').transition({ scale: 1.0, x: '0px' }, 'fast');
});

最新更新