#html #svg #safari
#HTML #svg #safari
Вопрос:
Я работаю над сайтом и решил попробовать SVG. Мои SVG отображаются так, как они должны отображаться в IE, Firefox и Chrome. Однако в Safari изображения выглядят размытыми. Вот что я делаю в коде:
<object data="section_3.svg" type="image/svg xml" width="100%" height="722" class="aligncenter" >
<img src="section_3.png" />
<svg version="1.1" x="0px" y="0px" width="763" height="1602" viewBox="0 0 763 1602" preserveAspectRatio="xMinYMin meet"></svg>
</object>
Ни за что на свете я не могу понять, почему изображения размыты. Странно то, что когда я увеличиваю / уменьшаю масштаб в Safari, размытость исчезает. Есть ли что-то, чего я не делаю в своем коде? Любая помощь будет высоко оценена. Спасибо!
Комментарии:
1. Здесь та же проблема, какую версию Safari вы используете?
2. @FranciscoSalvador В то время я использовал текущую версию Safari. Возможно, он был обновлен с тех пор, как я опубликовал этот вопрос.
Ответ №1:
Добавление -webkit-transform: translate3d(0,0,0)
в SVG устранило проблему для меня.
Комментарии:
1. Сработало для меня!
Ответ №2:
Если ваш svg содержит прямые горизонтальные и вертикальные линии, может показаться, что они размываются или становятся резче случайным образом при увеличении и уменьшении масштаба, поскольку им нужно выбрать оптимальный набор пикселей на вашем экране, хотя это обычная функция браузера, а не Safari. Известно, что Safari не поддерживает фильтры или эффекты размытия, но я не знаю, что находится внутри вашего svg. Ваши теги объектов имеют смысл, и ваш запасной вариант .png, но я не понимаю, почему тогда у вас есть теги svg без содержимого.
Комментарии:
1. Мой SVG не имеет эффектов размытия, но я не уверен в фильтрах; придется перепроверить это. Что касается тега svg, если я использую тег object для отображения svg, нужен ли мне тег svg вообще? Я думаю, что я этого не делаю, поскольку, кроме размытости в Safari, это отлично работает, используя только мои теги object и img.
2. мы пытались
shape-rendering="geometricPrecision"
и обсуждаем это на github.com/timmywil/panzoom/issues/548 . Кажется, это сложно решить. Также попробовал решение transform, но пока безуспешно.