只需手动操作宽度和高度,而不是使用缩放即可:
#pan {
width:500px;
height:500px;
position:relative;
background:#aaa;
}
#rec {
width:100px;
height:100px;
position:absolute;
top:250px;
left:250px;
background:#fff;
-webkit-transition:500ms cubic-bezier(0.785, 0.135, 0.000, 0.940)
}
#rec:hover{
/*-webkit-transform:scale(3.5,1);*/
width:300px;
left:150px;
-webkit-transition:500ms linear;
-webkit-border-radius:35px;
}Run Code Online (Sandbox Code Playgroud)
<div id="pan">
<div id="rec"></div>
</div>Run Code Online (Sandbox Code Playgroud)
您可以将您感兴趣的元素放在 div 中。然后你可以将 css border* 从元素移动到外部 div。然后,您可以对原始元素应用缩放**变换;边框(现在位于外部 div 中)应该不受影响。
*(可能还有其他属性,例如绝对定位、大小调整等)
**(任何进一步的变换,例如旋转或 3d 变换,都可以单独应用于外部 div)