За последние 24 часа нас посетили 45203 программиста и 1811 роботов. Сейчас ищут 772 программиста ...

Проблема со smarty и Internet Explorer

Тема в разделе "HTML и CSS", создана пользователем torm84, 19 май 2011.

  1. torm84

    torm84 Активный пользователь

    С нами с:
    17 май 2010
    Сообщения:
    23
    Симпатии:
    0
    Проблема заключается в том что тэги smarty в шаблоне стоят самыми первыми. При этом, в html код который передается браузеру, вместо этих тэгов подставляются пустые строки, из за которых в Internet Explorer съезжают все css стили. Отсюда получается разное отображение сайта в разных браузерах, например firefox'у на это совершенно наплевать, а IE от двух пустых строчек начинает плющить, крючить и колбасить.
    Код (Text):
    1. {config_load file="site.conf"}
    2. {load_presentation_object filename="store_front" assign="obj"}
    3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    4.  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    5. <html>
    6.   <head>
    7.     <title>{$obj->mPageTitle}</title>
    8.     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    9.     <link type="text/css" rel="stylesheet"
    10.      href="{$obj->mSiteUrl}styles/tshirtshop.css" />
    11.   </head>
    12.   <body>
    13. .......
    Кто сталкивался с такими проблемами, поделитесь пожалуйста способами решения.

    P.S. Ответы типа: удали их, не используй smarty и т.п. Не принимаются.
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Попробуй обрами
    {strip}
    {/strip}
     
  3. torm84

    torm84 Активный пользователь

    С нами с:
    17 май 2010
    Сообщения:
    23
    Симпатии:
    0
    А можно поподробнее, желательно на примере первых 2-х строчек приведенного мной кода? Я в smarty не особо разбираюсь, да и к своему проекту имею не круглосуточный доступ.
     
  4. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    {strip}
    {config_load file="site.conf"}
    {load_presentation_object filename="store_front" assign="obj"}
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>{$obj->mPageTitle}</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link type="text/css" rel="stylesheet"
    href="{$obj->mSiteUrl}styles/tshirtshop.css" />
    </head>
    <body>
    {/strip}
     
  5. torm84

    torm84 Активный пользователь

    С нами с:
    17 май 2010
    Сообщения:
    23
    Симпатии:
    0
    Сегодня попробовал, не помогает. Прикрутил простенький Фильтр вывода с substr(), тоже не помогло, но сложилось впечатление что он удалил эти символы, однако вмесно них прикрутил на то же место 6 своих, точно таких же.

    Кто встречался с таким поведением smarty, откликнитесь пожалуйста.
     
  6. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    смарти думаю тут не при чем. Смотри не в внешний вид, а исходный код страницы. может они не совсем пустые))
     
  7. torm84

    torm84 Активный пользователь

    С нами с:
    17 май 2010
    Сообщения:
    23
    Симпатии:
    0
    Эти символы есть везде где встречаются тэги smarty. Попробовал вывести через простенький фильтр вывода, он удалил несколько этих символов но полностью проблему решить не смог.
    Обновил smarty до версии 3.0.7, но не помогло, хотя символов стало меньше и пропал перевод на новую строку.
     
  8. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Так ты всё же определись - символы, или пустые строки.

    Если символы - возможно у тебя выводится BOM

    Сохраняй документ в "UTF8 без BOM", например у Notepad++ есть такая функция
     
  9. torm84

    torm84 Активный пользователь

    С нами с:
    17 май 2010
    Сообщения:
    23
    Симпатии:
    0
    Символы. Разобрался, откуда они лезли. Их вместо себя подтавляет функция require_once(), а не сами тэги smarty. Интересно, а как от этого отделаться?
     
  10. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    torm84

    ВСЕ файлы сохраняй в UTF-8 без BOM.