Разный показ для разных браузеров

Тема в разделе "Веб-дизайн", создана пользователем zsaz, 24 июл 2008.

Статус темы:
Закрыта.
Модераторы: zek24
  1. zsaz

    zsaz

    Регистр.:
    6 авг 2007
    Сообщения:
    251
    Симпатии:
    11
    Можно ли сделать средствами CSS или хоть как-нибудь, чтобы для ФФ отображалось одно, а для ИЕ другое, например:

    Если ИЕ
    margin:5px;
    Иначе
    margin:0px;

    нечто подобное только на правильном языке если таковой имеется для CSS
     
  2. Awstin

    Awstin Писатель

    Регистр.:
    3 сен 2007
    Сообщения:
    7
    Симпатии:
    1
    Код:
    <style type="text/css">
      #div1 { margin:0px; }
    </style>
    
    <!--[if IE]>
    <style type="text/css">
     #div1 { margin:5px; }
    </style>
    <![endif]-->
    также можно и инклюдить css файлы.
     
    zsaz нравится это.
  3. zsaz

    zsaz

    Регистр.:
    6 авг 2007
    Сообщения:
    251
    Симпатии:
    11
    Блин... че-то не работает:(
    }
    ul.menu li {
    margin-left:2px;

    }
    <!--[if IE]>
    ul.menu li {
    margin-left:20px;

    }

    <![endif]-->

    вот такой вот у меня код, но он не работает...


    и такой тоже не работает
    ul.menu li {
    margin-left:2px;
    <!--[if IE]>
    margin-left:20px;
    <![endif]-->
    }

    все это в CSS'e
     
  4. uniqqq

    uniqqq Создатель

    Регистр.:
    12 авг 2007
    Сообщения:
    42
    Симпатии:
    22
    Не совсем наверно в тему, но как привязать файл css'a ( один из нескольких ) к клику по кнопке допустим?


    К примеру на:
    http://www.msn.com/ ( под поиском кнопка Page Options - и там выбор цвета фона и оформления страницы)
     
  5. zsaz

    zsaz

    Регистр.:
    6 авг 2007
    Сообщения:
    251
    Симпатии:
    11
    у меня предложение через PHP.
    передаем какую-нить глобальную переменную и проверяем,

    if $var = 1
    echo "style1.css";
    else
    echo "style2.css";

    что-то типа такого
     
  6. bork1234

    bork1234 Постоялец

    Регистр.:
    25 июн 2008
    Сообщения:
    65
    Симпатии:
    13
    Ужасное решение, лучше так не делайте. Вы не правильно используете решение предложенное выше. Вот пример:

    HTML:
    
    <doctype .. >
    <html>
    <head>
    <title>anytitle</title>
    
    <!-- Для всех браузеров -->
    <link rel="stylesheet" href="/default_styles.css" type="text/css" />
    
    <!-- Только для осла ниже 7й версии -->
    <!--[if lt IE 7]>
    <link href="ie5-6.css" rel="stylesheet" type="text/css" media="all" />
    <![endif]-->
    
    <!-- Только для осла 7й и ниже версии -->
    <!--[if lte IE 7]>
    <link href="ie5-6-7.css" rel="stylesheet" type="text/css" media="all" />
    <![endif]-->
    
    <!-- Просто только для осла, любых версий -->
    <!--[if IE]>
    <link href="iehacks.css" rel="stylesheet" type="text/css" media="all" />
    <![endif]-->
    
    </head>
    
    <body>
    ...
    </body>
    
    </html>
    
    
    Также есть еще один трюк, если Вас не заботит валидация.

    Код:
    /* main.css */
    
    .any_style {
      margin: 0; /* это увидят все браузеры */
      _margin: 10px; /* а вот это увидит только осел */
    }
    
    /* но будьте аккуратны, в этом случае все браузеры,
     кроме осла, стиль не отработают, поскольку вылетят 
    на первой некорректной записи в строке ("_margin") , с ошибкой */
    .test { _margin: 10px; margin: 0; }
    
     
    VandJ нравится это.
  7. Werevolff

    Werevolff Писатель

    Регистр.:
    18 сен 2007
    Сообщения:
    6
    Симпатии:
    0
    как-как, через DHTML. Создаёшь структуру DOM, загоняешь в отдельный файлй javascript, реализующий разные оформления и выводишь на главную страницу обработчик.
     
  8. zsaz

    zsaz

    Регистр.:
    6 авг 2007
    Сообщения:
    251
    Симпатии:
    11
    bork1234, я как погляжу ты понимаешь по КССу, может поможешь в решении моей проблемы... буду очень признателен... самый первый пост..
     
  9. bork1234

    bork1234 Постоялец

    Регистр.:
    25 июн 2008
    Сообщения:
    65
    Симпатии:
    13
    Пример подключения css файлов "на лету" (кроссбраузерное решение:(

    HTML:
    
    <!doctype .. >
    <html>
    <head>
    <title>titlepage</title>
    <script type="text/javascript">
    
    function AppendCss(sCssHref) {
    var node = document.createElement("link");
    node.setAttribute('href', sCssHref);
    node.setAttribute('rel', 'stylesheet');
    node.setAttribute('media', 'screen');
    node.setAttribute('type', 'text/css');
    document.getElementsByTagName('head')[0].appendChild(node);
    }
    </script>
    </head>
    
    <body>
    
    <input type="button" onclick="AppendCss('/css_file1.css');" value="Подключить файл css_file1.css" />
    
    <input type="button" onclick="AppendCss('/css_file2.css');" value="Подключить файл css_file2.css" />
    
    </body>
    </html>
    


    Добавлено через 2 минуты
    Ну, собственно, я уже Вам помог в одном из сообщений выше :)

    В Вашем случае может помочь это:
     
  10. zsaz

    zsaz

    Регистр.:
    6 авг 2007
    Сообщения:
    251
    Симпатии:
    11
    че-то ниче не помогает.. а может ли это быть связано с тем, что у меня сайт на cms основан??
     
Статус темы:
Закрыта.