|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Есть XSL-файл, который я допилил до нужного вида. Допиливал так: вначале сделал HTML, добился того, чтобы во всех браузерах верстка была нормальной. После этого стал делать XSL, используя куски из ранее составленного HTML. Теперь проблема такая: полученный XSL нормально отображается в Опере и Хроме, но в IE8 либо вообще ничего не выводит (пустая страница), либо выводит страницу с поехавшей версткой (на прикрепленном рисунке слева вывод IE, справа как должно быть). В XSL указана такая строка: Код: xml 1.
Если метод поменять на html, то ничего принципиально не меняется, в IE8 по прежнему или чистая страница, или съехавшая верстка. У меня есть два файла, sample.html (по которому изначально формировался XSL и который нормально отображается в IE) и output.html (который является выводом XSLT). Я их сравнивал, в структуре никаких различий я не вижу — в output.html добавились переносы строк и отступы, но каркас страницы такой же. Разве что IE из каких-то своих соображений интерпретирует файл output.html не как XHTML Strict, а как-то иначе, что сказывается на внешнем виде. Может кто сталкивался, из-за чего такое может быть? Может быть в настройках вывода нужно что-то дополнительно указывать? ________________________ Мы смотрим с оптимизмом... ...в оптический прицел. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 11:13 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Похоже нашел, в чем дело. У меня используются пустые блоки <div></div>, в которых стилями определены фиксированные размеры и фоновое изображение. При трансформации они заменяются на <div/>. И похоже, что IE такие блоки просто не выводит. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 11:48 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Вставил внутрь таких блокив текст "*", теперь все нормально. Но это как-то не очень, хоть я звездочку и маскирую (делаю прозрачным цветом). Можно как-то более культурно указать XSLT-процессору, чтобы он не заменял <div></div> на <div/>? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 11:52 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
И еще одна странность. Если указываю метод вывода html, то почему-то в Опере все теги <br> дают двойной отступ (две строки). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 12:02 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Alibek B.Можно как-то более культурно указать XSLT-процессору, чтобы он не заменял <div></div> на <div/>? Код: xml 1. 2. 3.
Может даже сработает так Код: xml 1. 2. 3.
Alibek B.Если указываю метод вывода html, то почему-то в Опере все теги <br> дают двойной отступ (две строки).Минимальный пример с получившимся html в студию. Похоже на то, что вставляется Код: xml 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 12:15 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
_Vasilisk_Может даже сработает такКонечно же Код: xml 1.
без пробела после двоеточия ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 12:17 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
_Vasilisk_Похоже на то, что вставляется <br></br> Разве что XSLT в Опере работает по другому, чем в Visual Studio 2005. В студии я получаю <br />. Вообщем xsl:text и помог. Объявил такой шаблон: Код: xml 1. 2. 3.
и в пустых DIV-ах просто его вызываю. Этого оказалось достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 12:21 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Alibek B.Разве что XSLT в Опере работает по другому, чем в Visual Studio 2005.А я Вам, что говорил в соседней ветке? Alibek B.Объявил такой шаблон:Занафига? Ну да ладно. Больше шаблонов - солидней код ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 12:56 |
|
Какие изменения происходят в трансформации в xml/html?
|
|||
---|---|---|---|
#18+
Вообще похоже на то, что IE всегда использует сокращенный вариант записи пустых тегов, а Опера - всегда полный. И это не ошибка. Т.к. с точки зрения XML (а у Вас именно XML на выходе) это идентичные записи. Обычно XSL преобразование применяют на сервере, а клиенту отдают уже сформированный документ. Тогда у Вас не будет болеть голова какой браузер стоит на клиенте. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2011, 13:27 |
|
|
start [/forum/topic.php?fid=14&msg=37594989&tid=1332797]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
76ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 275ms |
total: | 448ms |
0 / 0 |