Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > Особенности для IE 6,7,8 ?


Автор: botya 26.11.2010, 14:45
Существуют какие-нибудь особенности при работе с IE? Дело в том, что есть сайт. Во всех браузерах всё хорошо, во всех версиях IE (6,7,8) - белый экран.

Искать ошибку в синтаксисе или есть особенности, как в вёрстке? 

Автор: diadiavova 26.11.2010, 14:53
Ты не в тот раздел запостил. Тебе сюда
http://forum.vingrad.ru/forum/web-html-xhtml-css-css2-div.html

Автор: botya 26.11.2010, 14:55
Ну, как бы не совсем. Сайт на XML / XSLT. В эксплорере в коде страницы после тэга body ничего нет. Явно не вёрстка...

Попробую пояснить вопрос.
Известно, что в XML синтаксис не строгий. Возможно, что IE не понимает некоторые "обороты"?

Автор: diadiavova 26.11.2010, 15:08
botya, понимаешь в чем дело, если есть ошибки в хмл, то ты получишь не белую страницу, а страницу с сообщением об ошибке. В данном случае варианты могут быть такие:
1. HTML-документ, полученный в результате преобразования оказался некорректным с точки зрения ИЕ(кстати наиболее вероятный случай), тогда в верстку.
2. Возможно где-то неправильно распознан например адрес хсл- преобразования. Тут могут быть к примеру проблемы с относительной адресацией и прочие прелести.

В любом случае, без самого документа и преобразования трудно что-либо сказать.  


Автор: botya 26.11.2010, 15:19
Вот кусок кода, из-за которого проблема (если его закоментировать, всё работает; естественно, в меню исчезают три раздела):



<li>
        <xsl:variable name="url" select="concat(//urls/base, '/catalog/novelty')" />
        <xsl:choose>
          <xsl:when test="//urls/active=$url">Новинки</xsl:when>
          <xsl:otherwise>
            <a href='{$url}'>Новинки</a>
          </xsl:otherwise>
        </xsl:choose>
      </li>
      <li>
        <xsl:variable name="url" select="concat(//urls/base, '/catalog/best')" />
        <xsl:choose>
          <xsl:when test="//urls/active=$url">Специальные предложения</xsl:when>
          <xsl:otherwise>
            <a href='{$url}'>Специальные предложения</a>
          </xsl:otherwise>
        </xsl:choose>
      </li>
      <li>
        <xsl:variable name="url" select="concat(//urls/base, '/catalog/leader')" />
        <xsl:choose>
          <xsl:when test="//urls/active=$url">Лидеры продаж</xsl:when>
          <xsl:otherwise>
            <a href='{$url}'>Лидеры продаж</a>
          </xsl:otherwise>
        </xsl:choose>
      </li>

Автор: diadiavova 26.11.2010, 15:33
botya, А что можно определить по куску, когда не видно ни документа, ни контекста этого куска?
Есть момент, который смущает, а именно немного странное использование функции concat. Она по идее должна принимать строки, а у тебя там кое-где выражения, возвращающие наборы узлов
Цитата(botya @  26.11.2010,  15:19 Найти цитируемый пост)
concat(//urls/base, '/catalog/novelty')

Оно, конечно, конвертирует, но что получится в результате - большой вопрос, и использование этого результата, как строки сравнения может так же дать непредсказуемые результаты, в том числе, зависящие от браузера или вообще хсл-процессора. Но не видя картину целиком невозможно сказать в этом ли дела или еще в чем.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)