За последние 24 часа нас посетили 38664 программиста и 1284 робота. Сейчас ищут 1070 программистов ...

PHP "ломает" дизайн?

Тема в разделе "PHP для новичков", создана пользователем Tokha, 1 фев 2013.

  1. Tokha

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

    С нами с:
    29 янв 2013
    Сообщения:
    77
    Симпатии:
    0
    Уже чертики зеленые скоро померещатся...

    Имеется:
    вот такой html со стилями http://rghost.ru/43460429 лежит в структуре сайта на ПК
    Windows 7
    Apache 2.2
    PHP 5.2

    Скрипт делает две вещи:
    Код (Text):
    1. $var = file_get_contents(".../default.html");
    2. echo $var;
    Проблема:
    При отдаче сервером HTML дизайн рушится в Chrome/Iron, Firefox. А вот в IE чувствует себя отлично.

    WinMerge сообщает, что код страницы из браузера и файл на диске ничем не отличаются.

    Когда открываю html-файл с диска двойным кликом в любом браузере или открываю сайт в IE, все ОК. Вот так:
    [​IMG]

    Когда открываю сайт в других браузерах, все плохо. Вот так:
    [​IMG]

    Т.е. <div> с Footer'ом ложится под контент и боковые панели.

    Что, и главное где, происходит, понять не могу.
    Прошу помощь зала. :)
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    =) сейчас мне скажут, что я старый и криворукий говнюк, но таблица решает этот вопрос кроссбраузерно и безгеморойно.
     
  3. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    В скорей всего там кривая верстка сама по себе...
     
  4. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    Поддерживаю Your.

    Если всё же попытаться проанализировать чем может отличаться файл, открытый как файл и он же через протокол http, то это http заголовки (в т.ч. про кодировку), абсолютные пути к картинкам/стилям и какие-то тонкости разрешений JavaScript. Надеюсь такого у вас нет: <img src="C:\ololo.jpg"> ?

    Мучайтесь дальше с новым знанием :)
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    дай линк на страницу на сайте-то
     
  6. Tokha

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

    С нами с:
    29 янв 2013
    Сообщения:
    77
    Симпатии:
    0
    Таблицы - это хорошо, но это будет "плавающий" дизайн с ресайзом отдельных панелей и выплывающими, выезжающими окошками.В этом случае дизайн на таблице мне не подкакает ли? Дивы все-равно будут нужны.
    Пишу с мобилки, потому дальше с цитатами будет сложно...
    По поводу кривого дизайна. Если б он был кривым, все плыло бы во всех случаях. А тут вредничают только webkit и mozilla при получении страницы от апача.
    Пути к стилям относительные, как видно из скринов, стили подгружаются корректно. Да и в случае с виндой и локальным сервером, абсолютные пути также работают.
    Вот по поводу кодировки гляну, как до компа доберусь, может где-то BOM - неBOM конфликт.

    Добавлено спустя 6 минут 36 секунд:
    http://localhost/ :))
    Я же говорю локальный апач. В вебе этой страницы не будет. Это порт "классического" софта в интранет.
     
  7. Tokha

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

    С нами с:
    29 янв 2013
    Сообщения:
    77
    Симпатии:
    0
    Решено.

    Отказ от "совместимости" с HTML5 в пользу XHTML решил проблему.

    Лучшее - враг хорошего. (с) Один мудрый товарищ.
     
  8. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    то есть ответ: "ошибки в верстке", ок?
     
  9. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    По картинкам больше похоже на то, что у элементов не прописаны margin-ы и padding-и. А т.к. у браузеров разные дефолтные значения, то вполне естественно, что некоторые блоки будут "цепляться" друг за друга углами.
    Во всяком случае с функцией file_get_contents проблема точно никак не связана. Может, там перед выводом хтмл какая-нибудь ошибка выводится?

    upd
    Проверил хтмл в пяти браузерах — смотрится одинаково.
    upd 2
    Вывел страницу через
    Код (PHP):
    1. <?php
    2. $var = file_get_contents('default.html');
    3. echo $var;
    Тоже смотрится одинаково.

    А вот так адрес разве пишут ".../default.html"?
    Во-первых, надо две точки, если нужно обращение к папке ниже "../default.html"
    Во-вторых, обращаться к папкам ниже не очень-то правильно. Права доступа на сервере могут оказаться неподходящими. И линки к другим подключаемым файлам (стилям и картинкам) в хтмл должны быть тогда абсолютными, а не такими, как в файле
    Код (Text):
    1. <link rel="stylesheet" href="css/default.css" type="text/css" media="screen, projection" />
    upd 3
    простите, что влез. болею, и только проснулся, неадекватен..
     
  10. Tokha

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

    С нами с:
    29 янв 2013
    Сообщения:
    77
    Симпатии:
    0
    ХЗ... ИЕ, ведь, показывал на отлично, да и другие файл из папки рендерили как положено.

    Вот и я думал, что чтение того же самого и передача в браузер должна давать тот же результат. Ан-нет. Код был ужат до двух строк, приведенных Вами ниже. Результат один.

    С локального сервера или просто "Открыть с помощью..."?

    А у меня, блин, черная дыра, в которую HTML5 проваливается.

    Имелось в виду, что файл не с корня подбирается, а в глубине структуры, т.е. перед "default" много букв. Сначала была сборка шаблона из частей, потом, в поисках проблемного места, все собрал в один файл. Подключение было из index.php в корне сайта, потому стили в относительных путях цеплялись, но абсолютные тоже пробовал ставить, эффекта не давало.

    Ладно, буду по старинке, без лишнего выпендрежа. Хотелось новизны, а получилась ж..а.
     
  11. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    И так, и эдак.
    Ну раз у других работает, и не зависит ни от html5, ни от file_get_contents, то что ещё может быть, вирус?

    Проверил ещё вариант с
    Код (Text):
    1. file_get_contents('../default.html')
    с подцеплением из папки выше, а в линке поправил адрес на
    Код (Text):
    1. href="../css/default.css"
    Тоже работает одинаково.

    Давай уж разберись. А то и КМС-ки, если поставишь, будут глючить.
     
  12. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    сиэмес-ки =)
     
  13. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    контент-менеджмент-систем же =)
     
  14. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    КМСки
    [​IMG]
     
  15. Tokha

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

    С нами с:
    29 янв 2013
    Сообщения:
    77
    Симпатии:
    0
    Если пользуюсь, то CMF ModX, очень уважаю за абсолютную гибкость и возможность быстро и нетрудно "доработать напильником" все, что угодно, включая внутренности CMF, но в данном случае ни ModX ни другие, практически неприменимы. Проще оказалось все с нуля руками.
     
  16. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    где мануал по установке?)
     
  17. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7