jQuery 调整边框大小和一些填充的弹跳效果
jQuery bounce effect with border box-sizing and some padding
如果 jQuery 弹跳效果应用于 div 具有框大小:边框框和一些填充,它会在效果动画期间按其填充大小缩小。参见 here。
HTML
<div class="test">
This is test div to bounce!
</div>
CSS
.test {
box-sizing: border-box;
min-height: 100px;
width: 250px;
background-color: #435ff3;
text-align: center;
cursor: pointer;
padding: 50px;
}
JavaScript
$('.test').click(function() {
$(this).effect('bounce', { distance : 10, times: 2 }, 'slow');
});
谁能解释一下这个现象?
这是一个已报告的已知错误 here。根据票据,这应该在版本 1.12
中得到修复
一个小的解决方法是添加另一个带有填充的容器:
HTML
<div class="test">
<div class="container">
This is test div to bounce!
</div>
</div>
CSS
.container{
padding: 50px;
}
注意:由于通过 jQuery 添加的内联样式(在您的情况下):
font-size: 100%;
background: transparent none repeat scroll 0% 0%;
border: medium none;
margin: 0px;
padding: 0px;
position: relative;
width: 250px;
height: 140px;
float: none;
如果 jQuery 弹跳效果应用于 div 具有框大小:边框框和一些填充,它会在效果动画期间按其填充大小缩小。参见 here。
HTML
<div class="test">
This is test div to bounce!
</div>
CSS
.test {
box-sizing: border-box;
min-height: 100px;
width: 250px;
background-color: #435ff3;
text-align: center;
cursor: pointer;
padding: 50px;
}
JavaScript
$('.test').click(function() {
$(this).effect('bounce', { distance : 10, times: 2 }, 'slow');
});
谁能解释一下这个现象?
这是一个已报告的已知错误 here。根据票据,这应该在版本 1.12
中得到修复一个小的解决方法是添加另一个带有填充的容器:
HTML
<div class="test">
<div class="container">
This is test div to bounce!
</div>
</div>
CSS
.container{
padding: 50px;
}
注意:由于通过 jQuery 添加的内联样式(在您的情况下):
font-size: 100%;
background: transparent none repeat scroll 0% 0%;
border: medium none;
margin: 0px;
padding: 0px;
position: relative;
width: 250px;
height: 140px;
float: none;