如何在不影响边界半径的情况下缩放元素?

时间:2011-04-16 12:35:09

标签: css css3

目前我的webkit变换会影响边框半径,使其失真。是否有任何css3 hack可以让我保留圆角? Example

2 个答案:

答案 0 :(得分:5)

只需手动操作宽度和高度,而不是使用缩放:

#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;
}
<div id="pan">
  <div id="rec"></div>
</div>

答案 1 :(得分:3)

你可以将你感兴趣的元素放在div中。然后你可以将css边框*从元素移动到外部div。然后,您可以将缩放**变换应用于原始元素;边界(现在在外部div)应该不受影响。

*(可能还有其他属性,如绝对定位,大小调整等)

**(任何进一步的变换,例如旋转或3d变换,都可以单独应用于外部div)