Как удалить анти-алиас в фоновом изображении спрайта УВЕЛИЧЕНИЕ в Microsoft Edge?

Изучите проблему на трех рисунках ниже. Я хочу расширить то, что уже отлично работает в Mozilla FireFox и Google Chrome, чтобы отлично работать в Microsoft Edge.


Mozilla FireFox: enter image description here Google Chrome: enter image description here Microsoft Edge: enter image description here


Я хочу, чтобы в Microsoft Edge было преднамеренно пикселированное, не сглаженное представление о моем увеличении изображения спрайтов, но независимо от того, что я пробовал, в этом единственном браузере до сих пор не удалось. Мне нужен элегантный CSS-единственный способ растянуть текущий код в Microsoft Edge, он работает так же, как и в двух других основных браузерах. Что еще я не пробовал? Заранее спасибо!

HTML:

<box><icon style="background-position:0px -3081px"></icon></box>

CSS:

box {
float: left;
text-align: center;
width: 40px;
}

icon {
background:url(../layout/icons.png) no-repeat;
background-color: white;
margin: auto;
margin-top: -10px;
width:13px;
height:13px;
display: block;

-ms-transform: scale(3);
-o-transform: scale(3);
-webkit-transform: scale(3);
transform: scale(3);

-ms-interpolation-mode: nearest-neighbor;   /* IE8+ */
image-rendering: -moz-crisp-edges;          /* Firefox */
image-rendering: -o-crisp-edges;            /* Opera */
image-rendering: -webkit-optimize-contrast; /* Chrome (and eventually Safari) */
image-rendering: pixelated;                 /* Chrome */
image-rendering: optimizeSpeed;             /* stop smoothing, speeden up instead */
image-rendering: optimize-contrast;         /* CSS3 Proposed */
}

Ответ 1

Недавно у меня была такая же проблема в веб-проекте, и, как уже упоминалось в комментариях, технически она не поддерживается Edge. И ИМХО, поскольку это ожидаемая функция сообщества разработчиков более 3 лет и в низком приоритете в их отставании, я думаю, что не стоит ждать, когда эта функция будет выпущена.

И так как я должен был выполнить эту работу, то я решил решить проблему с использованием более крупных исходных изображений и просто уменьшил их с помощью CSS (что также хорошо, особенно при отображении на экранах высокой плотности, таких как Retina).

В вашем конкретном случае использование векторных изображений, таких как SVG, - это ИМО, лучший способ выполнить работу даже на Edge, он также легче по весу, чем большие изображения.