我在chrome中遇到了css3转换旋转过渡的问题。过渡效果很好,但是在完成过渡后,元素移位了一个像素。另一个奇怪的事情是,它仅在页面居中(margin:0 auto;)时发生。如果同时删除过渡,该错误仍然存在。
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;
-webkit-backface-visibility: hidden;
应该解决它!