Html CSS过滤器在Firefox中不工作
我正在尝试CSS过滤器,但它在我的Firefox(15.0)浏览器中不起作用 HTML: 演示:Html CSS过滤器在Firefox中不工作,html,css,Html,Css,我正在尝试CSS过滤器,但它在我的Firefox(15.0)浏览器中不起作用 HTML: 演示: 假设您试图获得灰度图像,请使用此代码重写css代码: .google{ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.
假设您试图获得灰度图像,请使用此代码重写css代码:
.google{
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 3.5+ */
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */
}
.google{
过滤器:url(“数据:图像/svg+xml;utf8,#灰度”);/*Firefox 3.5+*/
过滤器:灰色;/*IE6-9*/
-webkit过滤器:灰度(100%);/*Chrome 19+和Safari 6+*/
}
更新的JSFIDLE:灰度限制了在firefox中使用-moz过滤器 要使其正常工作,请使用以下代码段:
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 3.5+ */
filter:url(“数据:图像/svg+xml;utf8,#灰度”);/*Firefox 3.5+*/
此代码将100%适用于您
.google{
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");
filter: gray;
-webkit-filter: grayscale(100%)
}
.google{
过滤器:url(“数据:图像/svg+xml;utf8,#灰度”);
过滤器:灰色;
-webkit过滤器:灰度(100%)
}
我还遇到了一个问题,在Firefox 39.0中,当我使用
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 3.5+ */
这对我来说很有用。不知道IE 10+是怎么回事,还没测试过吗你在Firefox中测试过你的JSFIDLE链接吗?在我的浏览器中,图像完全消失了。如果我删除
过滤器:url(参考资料…
line,它会出现,但没有效果。抱歉,现在应该可以了。我已经在JSFIDLE中更新了链接。这是有效的,但它是唯一能让它工作的语法吗?较新的FF版本不是有简单的语法吗?@user1251698:我不这么认为,但是你可以看看这里FWIW,如何为firefox 3.5取消灰度设置?你刚才复制了吗aspirinemaga的答案并删除评论?@BoltClock:事实上我的答案和aspirinemaga的答案是一样的。这很糟糕。不,我没有。我已经在谷歌上搜索了这个问题,如果答案是一样的,那么我能做什么呢?我不这么认为你们自己写这个?你们有吗?如何在hover上回滚过滤效果从Firefox35(2015年1月)开始,普通的“过滤器:”CSS属性将起到作用。
.google{
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");
filter: gray;
-webkit-filter: grayscale(100%)
}
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 3.5+ */
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+, Firefox on Android */
filter: gray; /* IE6-9 */
filter: grayscale(1); /* Firefox 39 (and above? Don´t know) */
-webkit-filter: grayscale(100%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */