Mam SVG logo klienta, które musi mieć jeden schemat kolorów dla nagłówka (niebieski na białym) i jego odwrotność w stopce (biały na niebieskim). Aby zmniejszyć obciążenie, używam pojedynczego wbudowanego elementu <svg>
z <symbol>
, odwołując się do niego w dwóch miejscach przy użyciu <svg><use xlink:href="#logo"/></svg>
, a następnie odpowiednio stylizując każdą wersję za pomocą CSS.Powiązana SVG nie ma antialii w IE11
Jak dotąd, tak dobrze. Muszę tylko raz wywołać SVG i mogę stylizować to inaczej w obu miejscach bez żadnych problemów.
Jednak po sprawdzeniu tej konfiguracji w IE11, zobaczyłem, że połączony SVG wygląda okropnie. Wygląda na to, że nie jest wygładzający, ale tylko w połączonej wersji.
Zredukowaliśmy SVG do wersji uproszczonej dla tego przykładu (i anonimizowałem klienta), ale you can see this behavior in a fiddle, jeśli przeglądasz go w IE11.
Oto zrzut ekranu zachowania w IE11. Wersja po lewej to kod, który chcę, ale po prawej stronie widać pogorszenie jakości w porównaniu do pełnej wersji SVG.
Czy istnieje jakikolwiek powód, dlaczego tylko IE11 (IE9 i IE10 czyni to prawidłowo) nie jest? Próbowałem wstawiać shape-rendering="geometricPrecision"
i shape-rendering="optimizeQuality"
zarówno w elementach <svg>
jak i , a jakość nie zmienia się w IE11.
Czego mi tu brakuje?
Powodem jest błąd przypuszczalnie. Możesz spróbować zgłosić to firmie Microsoft. –