SVG не отображает внутри iframe в IE9 - PullRequest
1 голос
/ 08 ноября 2011

Я создаю визуализации с использованием svg, и он хорошо отображается в IE9.Я работаю над функциональностью, где пользователь может встраивать визуализации в свои страницы.Я делаю это через iframe.Я сталкиваюсь с проблемой, когда SVG не рендерится внутри iframe в IE9.

Вот краткий пример, который работает в большинстве браузеров, но в IE9 он отображается пустым.

    <html><body>
    <iframe width="640" height="480"       src="http://www.croczilla.com/bits_and_pieces/svg/samples/butterfly/butterfly.svg"/>
    </body></html>

Есть идеи?спасибо.

1 Ответ

2 голосов
/ 10 ноября 2011

IE9 требует

 <!DOCTYPE html> 

объявление в начале для рендеринга документа в стандартном режиме, в противном случае он возвращается к режиму причуд.

Теперь можно поместить его в верхнюю часть приведенного выше примера, сделав его:

 <!DOCTYPE html>
 <html><body>
<iframe width="640" height="480"       src="http://www.croczilla.com/bits_and_pieces/svg/samples/butterfly/butterfly.svg"/>
</body></html>

но поскольку пользователи будут встраивать iframe в свои страницы, и, очевидно, нельзя полагаться на то, что их страницы всегда имеют определенный тип документа. так что лучшим решением было бы добавить "" в iframe. Кроме того, я хотел бы отметить, что несколько типов документов не будут влиять на отображение страниц, поскольку тип документа, определенный внутри iframe, применяется только к iframe.

Мне бы хотелось, чтобы IE9 обнаруживал эти функции на странице, как и другие браузеры, и правильно отображал их в будущем.

...