尝试在Safari中对图像的边框半径进行css3轻松过渡。
它只是在悬停状态而不是平滑过渡时闪烁。 非常感谢任何帮助
代码:
<style>
.all a:hover img {
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
filter: alpha(opacity=100);
-moz-opacity:1;
-khtml-opacity: 1;
opacity: 1;
-webkit-filter: grayscale(0%);
}
.all a img {
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
width: 50%;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
filter: alpha(opacity=90);
-moz-opacity:0.9;
-khtml-opacity: 0.9;
opacity: 0.9;
}
.all a img {
-moz-transition: all .3s ease;
-webkit-transition: all .3s ease;
-o-transition: all .3s ease;
transition: all .3s ease;
}
.all a img {
-webkit-filter: grayscale(100%);
transition: border-radius .3s ease;
-moz-transition: -moz-border-radius .3s ease,border-radius .3s ease;
-webkit-transition: -webkit-border-radius .3s ease,border-radius .3s ease;
}
</style>
<ul class="thumbs">
<li class="all identity">
<a href="projects/project_identity/index.html"><img src="http://imjoeybrennan.com/images/logos_t.jpg" alt="Logos"/></a>
</li>
</ul>
链接到该网站: http://imjoeybrennan.com
答案 0 :(得分:2)
这是一个简单的修复,Safari不支持从像素到百分比的转换。如果您将悬停样式从50%更改为100px,您将看到转换将顺利进行。
.all a:hover img {
-webkit-border-radius: 100px;
-moz-border-radius: 100px
border-radius: 100px;
}
您可能希望将它们设置为图像高度和宽度加倍的任何值,以确保它们在悬停时始终会被舍入。
答案 1 :(得分:2)
以下内容适用于父元素,边框半径应用于将webkit重新放回到我的行中:
-webkit-mask-image: -webkit-radial-gradient(white, black);
另一种选择是将元素包装在两个边界半径父级中。
对我来说似乎很苛刻,但远比双包装更好 - 有兴趣听其他解决方案。