Вы знаете величину скролла (допустим проскроллили на 100 пикселей), далее вы должны сместить изображение на эту величину в противоположном направлении. Каждый слой должен иметь некий коэффициент смещения. Чем ближе слой к наблюдателю (т.е. чем больше его z-index), тем больше коэффициент (но не более 1).
Это потому что у ссылок text-decoration: underline; по умолчанию стоит. Вот пробелы и подчёркиваются :)
Либо поставить text-decoration: none; ссылкам, либо записать без переносов в виде: <a><img /></a>
UPD: и кстати, использовать в данном случае <figure> — крайне неправильно.
Смотря какие браузеры вам надо поддерживать. Если только новейшие и, допустим, без мобилок, то можно сверстать при помощи SVG и его фильтров. Иначе - картинка, как и советует Денис Инешин
Есть такая "фича" у SVG. Вы там используете use, так вот если у оригинала, который вы юзаете (#smell) стоит опасити или например visibility: hidden, то иконка не отобразится. Кстати такая фигня может быть не только в ИЕ.