CSS не работает в IE? - PullRequest
       55

CSS не работает в IE?

2 голосов
/ 27 февраля 2009

Работаю на этом сайте в течение некоторого времени, прекрасно работает на Mac и ПК Firefox, а также Safari. Тем не менее, IE делает сайт почти пустым - есть идеи о том, что происходит? Есть обходные пути?

Заранее благодарю за помощь!

http://www.alliedprintingsolutions.com

http://www.alliedprintingsolutions.com/style.css (таблица стилей)

Ответы [ 11 ]

15 голосов
/ 27 февраля 2009

Ваш HTML является недействительным во многих отношениях. Пожалуйста, исправьте это в первую очередь.

7 голосов
/ 27 февраля 2009

Добавить DOCTYPE!

HTML5 или HTML4 Strict ( not Transitional) рекомендуются для лучшей кросс-браузерной поддержки.

<!DOCTYPE html>

1010 *
*

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">


(Как видите, HTML5 намного проще и по-прежнему может использоваться, даже если вы еще не используете теги HTML5.)


Примечание: DOCTYPE должен быть самым первым в файле, перед всеми остальными тегами, без пустых строк, табуляции или пробелов перед ним.

1 голос
/ 31 июля 2013

Я тоже столкнулся с той же проблемой и нашел решение после некоторого исследования.

  1. Не кодировать CSS в файле HTML
  2. Создайте отдельный CSfile и создайте ссылку на него, используя <link rel="stylesheet" href="css/style.css">
  3. И всегда добавляйте тег <!DOCTYPE> на каждую страницу HTML // * Это основное решение
1 голос
/ 27 февраля 2009

Быстрое решение: удалите "переполнение: авто;" от #wrapperbig и # wrapper.

Это приведет к отображению контента.

Однако обязательно посмотрите на другие ответы. У них есть хорошие очки.

1 голос
/ 27 февраля 2009

Возможно, вы захотите попробовать добавить тип документа.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

Редактировать: объявление doctype должно быть первым в файле html. Идет даже до тега .

0 голосов
/ 13 марта 2014

Не просто пробел до:

    <!DOCTYPE html>

, но также удалите пробелы перед фигурными скобками в вашей таблице стилей (файл CSS). Пример простой таблицы стилей (представьте ее на левом поле в текстовом редакторе):

    h1{
     font-family:Arial;
     color:purple;
    }
0 голосов
/ 14 октября 2013

Иногда даже после добавления

<!DOCTYPE html>

Css не загружен.

Это из-за пробелов перед

  <!DOCTYPE html>

Убедитесь, что его нет.

Остальное в IE, страница будет ужасно показана

0 голосов
/ 27 февраля 2009

Спасибо за все ваши предложения, всем. Большая часть контента теперь отображается (как и должно быть) в IE, за исключением нижнего колонтитула, который грубо разрезает мою страницу (хаха). Я вижу, что вы говорите, Nelson LaQuet, о заголовочных изображениях, мне придется попробовать поиграть с ними, я все еще новичок в CSS, и выяснить, как правильно разместить их все вместе с картой изображений, было достаточно головной болью , Что касается Doctype, я добавил его, как вы сказали мне, и он, похоже, испортил некоторый контент даже в Firefox, поэтому я знаю, что мне нужно допустить еще несколько ошибок. Когда я его убрал, все снова выглядело нормально. «Woowoo» с абсолютным позиционированием были в значительной степени необходимы, поскольку используемый метод позиционирования был ЕДИНСТВЕННЫМ способом, который я мог найти для работы с фоновыми изображениями и изображениями заголовка в такте, с делением столбцов в правильном месте. По крайней мере, я добился некоторого позитивного прогресса, но, думаю, у меня впереди еще много работы: / Просто хочу, чтобы это было немного легче исправить, так как в Firefox он выглядит просто отлично. О, хорошо, еще раз спасибо за вашу помощь, ребята!

Shannon

0 голосов
/ 27 февраля 2009

Слишком много чего-то особенного происходит с абсолютным позиционированием content_left и content_right. Вы будете в порядке, удалив «position: absolute» и замените его на «float: left» в обоих материалах (установите ширину оболочки на 100%).

0 голосов
/ 27 февраля 2009

Быстро взглянул на код в firebug. Похоже, у вас есть z-индекс -1 для содержимого div (#wrapperbig), который браузеры должны игнорировать для не абсолютного / относительного содержимого - это может быть странной реализацией в IE.

Также, как уже упоминалось ранее, добавьте тип документа - IE отобразит сайт в «режиме причуд», если тип документа отсутствует.

...