当前位置: 首页 > 面试题库 >

CSS3转换旋转导致Chrome中移动1像素

张锐藻
2023-03-14
问题内容

我在chrome中遇到了css3转换旋转过渡的问题。过渡效果很好,但是在完成过渡后,元素移位了一个像素。另一个奇怪的事情是,它仅在页面居中(margin:0 auto;)时发生。如果同时删除过渡,该错误仍然存​​在。

HTML:

<div class="wrap">
    <img src="https://github.com/favicon.ico" class="target" alt="img"/>
</div>

<div class="wrap">
    <div class="block"></div>
</div>

CSS:

.wrap {
    margin:50px auto;
    width: 100px;
}
.block {
    width:30px;
    height:30px;
    background:black;
}
.target,.block {
    display:block;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.target:hover,.block:hover {
    -webkit-transform: rotate(90deg); 
    -moz-transform: rotate(90deg); 
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);  
}

注释掉该margin:0 auto;行以使其消失。

任何人都有任何想法如何在保持页面居中的同时停止此操作?

我在OSX 10.6.8上使用版本24.0.1312.57

干杯


问题答案:

实际上,只需将其添加到包含所有元素的站点容器中: -webkit-backface-visibility: hidden;

应该解决它!



 类似资料:
  • 问题内容: 在我完成的设计中,我有一个需要垂直的元素。我已经获得了CSS才能在除IE9之外的所有浏览器中工作。我将过滤器用于IE7和IE8: 但是,这似乎使我的元素在IE9中变得透明,而CSS3的“变形”功能似乎无能为力! 有人知道IE9中旋转元素吗? 非常感谢您的帮助! W. 问题答案: 标准CSS3旋转应在IE9中工作,但我相信您需要为其指定供应商前缀,如下所示: 它可能无法在Beta版本中工

  • 问题内容: 无法使此动画图像正常工作,它应该进行360度旋转。 我猜下面的CSS有点问题,因为它保持静止。 问题答案: 这是 正确的动画CSS: 有关代码的一些注意事项: 您已将关键帧嵌套在规则中,这是不正确的 不适用于绝对定位的元素 看看caniuse:IE10不需要前缀

  • 我正在使用来自ViewPager(在调用活动中)的活动转换,以及共享元素和内容转换。我得到这个崩溃时,重新进入调用活动: 此外,一旦返回,屏幕开始持续闪烁,白色屏幕来回闪烁。 以下是我的转换标志: 我尝试在调用和调用活动上设置进入/退出转换,但没有运气。

  • 我正在尝试建立一个简单的“飞鸟”游戏,我需要鸟的图像倾斜,上升时指向上方,反之亦然。然而,当旋转我的图像时,它会在稍微下降或轻触屏幕后部分或完全从屏幕上消失。谁能告诉我怎么解决这个问题吗?

  • #rotate2D,#rotate3D { width: 80px; height: 70px; color: white; position:relative; font-weight:bold; font-size:15px; padding:10px; float:left; margin-right:50px; border-radius:5px; border:1px solid #00

  • #rotate2D,#rotate3D { width:80px; height:70px; color:white; position:relative; font-weight:bold; font-size:15px; padding:10px; float:left; margin-right:50px; border-radius:5px; border:1px solid #00000