语言:Javascript / jQuery / PHP
我想要完成的,类似于您在此页面的气泡中看到的悬停效果:
https ://www.vizify.com/rand-fishkin
我使用CSS3实现了类似的效果,但是过渡不如该页面上的过渡流畅,因此我选择使用 Javascript 代替。
我在这里做的是在悬停时将 div 气泡的宽度和高度增加 10%。
但我不知道如何按百分比调整边框半径和边距?
$(".colored-bg").each(function() {
$.data(this, 'size', { width: $(this).width(), height: $(this).height() });
}).hover(function() {
$(this).stop().animate({ height: $.data(this,'size').height*1.1,
width: $.data(this,'size').width*1.1,
margin: '-13.5px auto' });
}, function() {
$(this).stop().animate({ height: $.data(this,'size').height,
width: $.data(this,'size').width,
margin: '-13.5px auto' });
});
悬停时:
我想调整边框半径,以便即使在悬停时气泡也保持圆形(悬停的 div 大小的高度/宽度的 1/2 像素数)
我想将边距更改为 1/8 负像素(悬停的 div 大小) - 动态 - 悬停时使 div 保持垂直居中(这样当它增长时,它不会简单地向下扩展)。
够了,这里有一个演示,反映了我到目前为止所做的事情。
目前,我使用 300px 的固定边框半径(大于 div 本身)来保持 div 即使在悬停时也是圆形的,并且我正在以静态方式更改边距(不是基于百分比)。
由于我正在添加基于百分比的增长过渡,因此我无法为悬停的 div 执行静态边框半径或静态边距。
我的问题是,如何按百分比指定边框半径和边距?
如果这是您将宽度扩大 10% 的方式:width: $.data(this,'size').width*1.1
您如何将边距设置为当前高度的 1/8?
我偶然发现这篇文章正在做我想做的事:https ://stackoverflow.com/a/3630768/1399030 (根据百分比进行划分和输出)
非常感谢,非常感谢所有帮助!