Acquia Marina: IE 6 не обрабатывает local.css [победа! проблема была не в Acquia Marina]

Главные вкладки

Аватар пользователя lolmaus lolmaus 3 апреля 2009 в 14:40

Привет.

Установил тему Acquia Marina в /sites/default/themes. В соответствии с инструкцией к ней, никакие ее файлы не редактировал.

Модифицировал тему путем помещения CSS-кода в local.css, который я создал из local_sample.css в папке темы.

Этот CSS-код прекрасно работает во всех браузерах, кроме IE 6. IE 6 его то ли игнорирует, то ли не может обработать. Вонючка. Sad

При этом link на local.css в коде страницы имеется, и сам local.css прекрасно открывается в IE 6.

Прошу помочь понять, чем вызвана проблема, и решить ее.

PS Если тот же CSS-код вхакать в style.css, то IE 6 его применяет.

Комментарии

Аватар пользователя HIgor1968 HIgor1968 3 апреля 2009 в 15:07

Для 6-го осла в акве дополнительно подключается ie6-fixes.css
Попробуй просто в page.tpl.php поправить следующий код

    <?php print $styles; ?>
    <!--[if IE 7]>
      <link rel="stylesheet" href="<?php print $base_path . $directory; ?>/ie7-fixes.css" type="text/css">
    <![endif]-->
    <!--[if lte IE 6]>
      <link rel="stylesheet" href="<?php print $base_path . $directory; ?>/ie6-fixes.css" type="text/css">
    <![endif]-->

Убери из инфо файла свою CSS и укажи ее явно:

    <?php print $styles; ?>
    <!--[if IE 7]>
      <link rel="stylesheet" href="<?php print $base_path . $directory; ?>/ie7-fixes.css" type="text/css">
    <![endif]-->
    <!--[if lte IE 6]>
      <link rel="stylesheet" href="<?php print $base_path . $directory; ?>/ie6-fixes.css" type="text/css">
    <![endif]-->
      <link rel="stylesheet" href="<?php print $base_path . $directory; ?>/local.css" type="text/css">
Аватар пользователя lolmaus lolmaus 3 апреля 2009 в 15:19

Вот так выглядит исходный код страницы в IE 6:

<link type="text/css" rel="stylesheet" media="all" href="/sites/default/themes/acquia_marina/local.css?r" />
    <!--[if IE 7]>
     <link rel="stylesheet" href="/sites/default/themes/acquia_marina/ie7-fixes.css" type="text/css">
   <![endif]-->
    <!--[if lte IE 6]>
     <link rel="stylesheet" href="/sites/default/themes/acquia_marina/ie6-fixes.css" type="text/css">
   <![endif]-->

То есть IE 6 получает ссылку на local.css. И если скопировать ее в адресную строку, он нормально его откроет!

Почему же он его не применяет?

Аватар пользователя lolmaus lolmaus 3 апреля 2009 в 16:27

HIgor1968 wrote:
Скорее просто своей CSS перекрывает ваши определения

Применение "!important" не меняет ситуации. Если бы дело было в перекрытии, то "!important" бы победил...

Аватар пользователя HIgor1968 HIgor1968 3 апреля 2009 в 15:46

Я на днях тоже с аквой и 6-м ослом убивался. Она у меня просто в IE6 падала, оказалось какой-то косяк в связке с lightbox2, пришлось его заменить.

Аватар пользователя lolmaus lolmaus 3 апреля 2009 в 17:07

Эврика!

Проблема была из-за сочетания двух факторов:
1) local.css содержал комменты на русском;
2) local.css был сохранен в кодировке Windows-1251.

Пересохранил его в UTF-8, и IE 6 его благополучно зохавал! Biggrin

PS Извините, проблема не была связана с Acquia Marina.

Аватар пользователя tiredprog tiredprog 14 августа 2009 в 15:36

lolmaus wrote:
Эврика!

Проблема была из-за сочетания двух факторов:
1) local.css содержал комменты на русском;
2) local.css был сохранен в кодировке Windows-1251.

Пересохранил его в UTF-8, и IE 6 его благополучно зохавал! Biggrin

PS Извините, проблема не была связана с Acquia Marina.

Была та же проблема, спасибо за опыт!