Я много искал в Интернете, но не могу найти решение перекрестного браузера, чтобы вывести изображение css backgrund в оттенки серого и обратно.
Единственное рабочее решение - применить серию оттенков фильтра CSS3:
-webkit-filter: grayscale(100%);
но это работает только с Chrome v.15 + и Safari v.6 + (как вы можете видеть здесь: http://css3.bradshawenterprises.com/filters/)
Многие страницы в Интернете говорят об этом решении с серыми элементами:
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 */
(как вы можете видеть здесь: http://www.karlhorky.com/2012/06/cross-browser-image-grayscale-with-css.html)
Но на самом деле это не работает для фоновых изображений css, как это делает фильтр webkit.
Есть ли какое-либо решение (возможно, с jquery?), чтобы взломать это отсутствие поддержки фильтра на менее продвинутых браузерах?