【发布时间】:2017-01-04 11:23:58
【问题描述】:
我遇到了 CSS3 缩放和 Safari (v10.0.1) 的问题。
我选择了具有以下结构的网格项:
<div class="grid-inline col-12 bp1-col-6 bp3-col-3 index-grid-selector index">
<a href="">
<div class="index-grid-item">
<div class="index-grid-dummy"></div>
<img srcset=", 2x" title="" alt="">
</div>
</a>
</div>
CSS(少):
.index-grid-selector {
a {
.index-grid-item {
position: relative;
overflow: hidden;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-o-backface-visibility: hidden;
backface-visibility: hidden;
.index-grid-dummy {
padding-bottom: 100%;
}
img {
position: absolute;
top: 0;
left: 0;
-webkit-transition: all 0.25s ease-in-out;
-moz-transition: all 0.25s ease-in-out;
-ms-transition: all 0.25s ease-in-out;
-o-transition: all 0.25s ease-in-out;
transition: all 0.25s ease-in-out;
}
}
}
&:hover {
.index-grid-item {
img {
transform: scale(1.2);
-webkit-transition: all 0.25s ease-in-out;
-moz-transition: all 0.25s ease-in-out;
-ms-transition: all 0.25s ease-in-out;
-o-transition: all 0.25s ease-in-out;
transition: all 0.25s ease-in-out;
}
}
}
}
图像绝对定位在网格项目容器中,然后在悬停时缩放。
在 Safari 中缩放图像期间,图像略微放大并出现偏移。图像周围出现间隙(白线)。动画完成后,图像会正确放置,直到悬停功能被移除。
我在这里设置了一个工作演示来展示这个问题。
http://www.testdomainone.co.uk/test.html
我已尝试将以下内容应用于图像及其父级,但问题仍然存在。
-webkit-transform-style: preserve-3d;
-webkit-transform:translate3d(0,0,0);
-webkit-transform: translateZ(0)
有谁知道如何解决这个问题?
【问题讨论】:
-
你尝试过 -webkit-backface-visibility: hidden;还是以下两个一起? -webkit-透视:1000; -webkit-backface-visibility:隐藏;
-
@LucasCordina 我已经添加了背面可见性,但刚刚尝试了这个和透视图,不幸的是没有改变。
-
尝试将
transition: all更改为transition: transform -
@LGSon 谢谢,但没有改变。
标签: css animation safari scale