0

我知道这个问题已经被问过了,但我找不到直接的答案

我正在尝试在页面上显示一些图像,它们应该以灰度显示,除非在鼠标悬停时平滑过渡到颜色。我已经让它在 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 */

}
4

1 回答 1

1

目前很少有浏览器支持 CSS3 过滤器。

你可以试试这个https://github.com/GianlucaGuarini/jQuery.BlackAndWhite

看看这个http://caniuse.com/css-filters

于 2013-07-22T10:27:02.417 回答