0

尝试在 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

4

2 回答 2

3

以下适用于父元素,边框半径适用于将 webkit 踢回对我来说:

-webkit-mask-image: -webkit-radial-gradient(white, black);

另一种选择是将元素包装在两个边界半径父项中。

对我来说似乎很老套,但比双包装选项要好得多——有兴趣听听其他解决方案。

于 2013-11-18T00:15:46.293 回答
2

这是一个简单的修复,Safari 不支持从像素到百分比的转换。如果您将悬停样式从 50% 更改为 100 像素,您会发现您的过渡将顺利进行。

.all a:hover img {
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px
    border-radius: 100px;

}

您可能希望将它们设置为图像高度和宽度的两倍,以确保它们在悬停时始终是圆形的。

于 2012-11-20T15:36:11.013 回答