我知道这个问题已经有人问过了,但我找不到直接的答案
我正在尝试在页面上显示一些图像,这些图像应该以灰度显示,但在鼠标悬停时它们平滑过渡为彩色时除外。我已经让它在 IE、Chrome 和 Firefox 上运行良好,但在 Safari 5.x 上不起作用。问题出在适用于 Mac 的 Safari 5 和适用于 Windows 的 Safari 上。
我正在使用下面的代码
img{
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 10+ */
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */
-webkit-transition: all .6s ease; /* Fade to color for Chrome and Safari */
-webkit-backface-visibility: hidden; /* Fix for transition flickering */
}
最佳答案
目前只有少数浏览器支持 CSS3 过滤器。
你可以试试这个https://github.com/GianlucaGuarini/jQuery.BlackAndWhite
关于jquery - Safari 5 中的灰度滤镜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784217/