За последние 24 часа нас посетили 32897 программистов и 1755 роботов. Сейчас ищут 838 программистов ...

Смена css под вид браузера

Тема в разделе "HTML и CSS", создана пользователем Almere, 15 фев 2011.

  1. Almere

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

    С нами с:
    8 фев 2011
    Сообщения:
    53
    Симпатии:
    0
    Здраствуйте.
    Задался идеей сделать отдельное css под различные версии IE.
    css намутил, но теперь всё встало...Каким методом можно определять систему юзера и ставить ему соответствующее css?

    Пробывал так:

    <body class="<?php
    if ( stristr($_SERVER['HTTP_USER_AGENT'], 'Firefox') ) echo 'firefox';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'Chrome') ) echo 'chrome';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'Safari') ) echo 'safari';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'Opera') ) echo 'opera';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0') ) echo 'ie6';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0') ) echo 'ie7';
    elseif ( stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 8.0') ) echo 'ie8';
    ?>">

    и в ксс:

    .menu li {правила для всех браузеров}
    .ie6 .menu li {исправления для IE6}
    .opera .menu li {исправления для Opera}

    результат - css просто пропадает.

    Пробывал так:

    <script type="text/javascript" src="skins/valve/js/ie.js"></script>

    IE.js:

    <script type=”text/javascript”>
    var agent = navigator.userAgent.toLowerCase();
    if (agent.indexOf(”gecko” > -1)
    document.write(”<link rel=’stylesheet’ href=’/skins/valve/css/style.css’ type=’text/css’>”;
    if (agent.indexOf(”msie” > -1)
    document.write(”<link rel=’stylesheet’ href=’/skins/valve/css/ie.css’ type=’text/css’>”;
    else
    document.write(”<link rel=’stylesheet’ href=’/skins/valve/css/style.css’ type=’text/css’>”;
    </script>

    Результат анологичен первому...CSS просто пропадает.
    Я что-то делаю не так или способы не рабочие, подскажите, пожалуйста.
    И какой выход из этой ситуации.
    Спасибо ;)
     
  2. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    $_SERVER['агент'] или как-то так =) и даешь нужную цссху.
     
  3. Almere

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

    С нами с:
    8 фев 2011
    Сообщения:
    53
    Симпатии:
    0
    Простите, а можно поточнее? :)
     
  4. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    это из пхп. ссылка цсс ведет на скрипт пхп, скрипт смотрит, что за браузер его тормошит, чешет репу и выдает ему нужный css
     
  5. Almere

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

    С нами с:
    8 фев 2011
    Сообщения:
    53
    Симпатии:
    0
    это я понял, спасибо))
    а как ссылочку привязать?
    Не могил бы Вы дать 1 готовый пример ? :)
     
  6. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Almere
    одна и та же ссылка будет для всех. т.е. внешне - никаких изменений. а на сервере кладешь цсс допустим для осла, лиса и оперы, хрома и всего чего хочешь. Заходит чел, его браузер ломится за цсс, скрипт смотрит как браузер представился, далее делает тупо include('подходящий.css'); и все.