【发布时间】:2013-06-12 05:29:03
【问题描述】:
我有两个并排的 div 元素。当我将鼠标移到第一个上并为其设置动画时,下一个奇怪地抖动。见这里:http://jsfiddle.net/YqZSv/1/ 我注意到它只在涉及填充和边框时发生。如果我用边距替换边框,“抖动”效果就会停止。
HTML
<div class='a'></div>
<div class='b'></div>
CSS
.a {
width: 80px;
height: 80px;
padding: 10px;
border: 0px solid yellow;
background-color: red;
display: inline-block
}
.b {
width: 100px;
height: 100px;
background-color: blue;
display: inline-block;
margin-left: 20px;
}
jQuery
$('.a').mouseenter(function(){
$(this).animate({
'padding': 0,
'borderWidth': 10
});
}).mouseleave(function(){
$(this).animate({
'padding': 10,
'borderWidth': 0
});
});
我不能使用边距代替边框,因为我使用的是带有边框来源的背景图像,所以我不希望它与其内容一起移动。
有什么帮助吗?
【问题讨论】:
-
为什么投反对票?这是一个很好的问题。
标签: javascript jquery jquery-animate