IE Edge: SVG <use>относительный путь не работает - PullRequest
0 голосов
/ 22 ноября 2018

У меня проблема при использовании SVG в iFrame в Internet Explorer Edge: относительный путь преобразуется в абсолютный, с родительским веб-сайтом в качестве базы.

Вот простой пример:

Родительский веб-сайт:

<html>
    <body>
        <iframe src="./js/index.html" frameborder="0"></iframe>
    </body>
</html>

Iframe (js / index.html):

<html>
    <body>
        <svg>
            <use xlink:href="./img1/icons1.svg#icon-view-close"></use>
        </svg>
        <img src="./img1/image1.jpg" alt="">
    </body>
</html>

Сетевой отладчик: enter image description here

В сетевом отладчике вместо запроса "http://localhost:5500/js/img1/icons1.svg", Edge запрашивает" http://localhost:5500/img1/icons1.svg".

Проблема кажетсятолько для того, чтобы повлиять на использование SVG, потому что путь к изображению JPG правильно интерпретируется: "http://localhost:5500/js/img1/image1.jpg"

Примечание: я пытался преобразовать устаревший xlink: href в простой href, но он ничего не меняет.

Он отлично работает во всех других протестированных нами браузерах: Chrome, FF и даже IE 11, так как мы используем JS lib https://github.com/Keyamoon/svgxuse

(я использую Microsoft Edge 41.16299.785.0; в Windows 10.)

Буду очень признателен за любой вклад в этот вопрос! Заранее спасибо за ваше время:)

1 Ответ

0 голосов
/ 24 апреля 2019

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...