2015-11-16 2 views
1

Сайт разрабатывается здесь: http://new.brushman.com/about/IE11 Игнорирование Инлайн CSS

Система CMS позволяет добавление в линию CSS на странице на странице основе. Этот CSS добавляется на страницу после загрузки всех других .css-файлов.

IE11 игнорирует стиль, даже, хотя она работает в 8, 9, 10, Edge, и все остальное (Chrome, Firefox, Safari и т.д.)

Рядный CSS является:

<style> 
/* CMS Page about CSS */ 
main {background: #d70055;} 
</style> 

и находится в после все CSS файлы загружаются

интересно то, что инспектировать элемент показывает фон с флажком, и это в верхней части списка, указывающей, что имеет наивысший приоритет.

Нет непрозрачных элементов, покрывающих элемент.

Некоторые вещи, которые я пробовал: важные устраняющие комментарии добавления дополнительных новых линий с помощью RGBA

Полностью и тщательно озадачен!.

+0

Как насчет использования фона? – csmckelvey

+0

Хм ... ты пробовал с #main? (id css selector) – sinisake

+0

@nevermind Нет. Я загружаю response.js, поэтому, возможно, это объясняет, почему работают 8,9 и 10. Я полагаю, что Edge на Win10 работает, потому что это правильный браузер ... –

ответ

5

Это должно работать:

main { 
    display: block; 
    background: #d70055; 
} 

IE не обрабатывает неизвестные типы элементов в виде блочных элементов - так же, как the <main> element в этом случае.

+0

Исправить; вам нужно 'display: block', потому что IE не имеет этого в своей таблице стилей по умолчанию в браузере, как это делают другие браузеры. – CBroe

+0

Huh. Это работает. Любая идея, почему 8,9,10 работать без этого? Я загружаю response.js, используя метод комментариев html, возможно, что-то с этим связано? Не имеет значения, пока это работает, но любопытно ... –

+1

@CraigJacobs Это ваш файл 'modernizer.custom.26434.min.js', который исправляет это в более ранних версиях IE. Он обеспечивает уровень распознавания общих элементов HTML5, которые уже имеются в большинстве современных браузеров.Он просто не идентифицирует IE11 как необходимый для выполнения этой компенсации. Я боюсь, что ни один из этих «модернизационных» JavaScripts не компенсирует все элементы стиля HTML5. Они меняются с каждым новым подрывным действием браузера. Это значительно меньше работы по их созданию для более старых версий и обновлению, когда выпущена новая версия. –

-1

Попробуйте следующее

background-color: # d70055;

0

Unfortunatley IE11 не поддерживает новый смысловой элемент html <main>.

+0

Это правильный ответ, источник: http://caniuse.com/#feat=html5semantic может ли downvoter объяснить его действие? – Muleskinner

+1

Я не ответил на ваш ответ, потому что вы технически верны. Однако IE11 по-прежнему способен отображать нестандартные элементы с пользовательским CSS. Любые элементы, которые не распознаются IE11, будут отображаться с помощью 'display: inline;'. Пользовательские элементы в IE всегда были разрешены, это вопрос компенсации CSS по умолчанию, применяемого к этим элементам. –

+1

Я проголосовал за ваш комментарий, потому что это правда, но я принял @Keammoort ответ, потому что он решил проблему. Основной элемент был там, и рендеринг - он просто не был корректным, потому что браузер не рассматривал его как элемент уровня блока. main {display: block} исправлена ​​проблема. –

Смежные вопросы