ASP classic генерирует правильный ТИП документа для чистого SVG-документа

#asp-classic #svg #internet-explorer-9 #mime #doctype

#asp-classic #svg #internet-explorer-9 #mime #doctype

Вопрос:

Попытка получить правильный DOCTYPE для чистого SVG-документа, который находится внутри XML prolog, я думаю, они называют это. Мой SVG отлично работает в Firefox, но при попытке перенести его в IE9 возникает множество проблем. Содержимое в IE DOM получается совершенно иным, чем в FF, это действительно действительно странно. Некоторый Javascript, который запускается при загрузке объектов SVG, кажется, запускается «слишком рано», т. е. до того, как присутствуют предшествующие элементы.

Может ли DOCTYPE быть проблемой?

Согласно некоторой информации IE9 и SVG на http://msdn.microsoft.com/en-us/library/gg589526 (v = против 85).aspx Я думаю, что то, что я пытаюсь сделать с IE9, это использовать «автономный SVG», как в подходе, когда сервер обслуживает документ с расширением .svg. ЗА исключением того, что рассматриваемый SVG генерируется сервером, на котором запущен ASP classic.

Некоторые из команд ASP, влияющих на ответ, возвращающийся в браузер, являются: Response.Добавьте заголовок «Расположение содержимого», «встроенный» ответ.ContentType = «изображение / svg xml»

Еще одна проблема, я использую преобразования MSXML XSLT для генерации вывода. Итак, я ограничен тем, что и когда способен делать сериализатор XSLT.

Рекомендуемое содержимое в файле выглядит примерно так:

Я бы хотел полностью исключить html-часть и просто использовать XML-пролог, DOCTYPE, затем первый корневой элемент.

Является ли DOCTYPE строго необходимым в IE9 для SVG? Я думаю, у меня возникли проблемы с получением сервера для выдачи одного в правильной последовательности. Если это вообще имеет значение для документа «pure SVG».

Ответ №1:

Если ваш svg не «встроен» в (X) HTML-страницу, но имеет <svg> в качестве корневого элемента, то вам не нужен DOCTYPE. (Сам SVG не требует этого, но браузер может.) Даже некоторые члены рабочей группы SVG советовали не использовать DOCTYPE с svg.

Использование атрибутов version и baseProfile может устранить некоторые проблемы с отображением.

Если вы решите использовать DOCTYPE, вы можете скопировать подходящий отсюдаhttp://www.w3.org/QA/2002/04/valid-dtd-list.html прокрутите вниз до заголовка «Необязательные объявления doctype»