1

我正在使用 CSS 变换:缩放(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;}
4

2 回答 2

0

我只是找到一个简单的方法,删除所有的转换:规模头痛并写下这个

.link-box-child:hover {
   width:40px;
   height:40px;
   margin:-10px;
   position:absolute;
   padding:0px;
  }
于 2013-03-18T18:03:03.757 回答
0

我会使用像jQuery Transit这样的 jQuery CSS3 效果框架来处理您的缩放/转换。

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

例子:

$(".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');
});
于 2013-03-18T18:03:24.617 回答