HTML CSS IE7 Условные коды - PullRequest
1 голос
/ 17 марта 2012

У меня есть эти условные коды HTML для IE 7, но они, похоже, не работают.

<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->

<link rel="stylesheet" type="text/css" href="/css/styles.css" />

что-то с ними не так или что-то мне не хватает?

Ответы [ 3 ]

4 голосов
/ 17 марта 2012

Если вы измените свои правила для IE7 в stylesie.css, тогда он должен быть загружен после вашего исходного файла CSS:

<link rel="stylesheet" type="text/css" href="/css/styles.css" />

<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->

Правила для селектора с той же спецификацией перезапишут старые, поэтому IE7 сначала проанализирует stylesie.css и перезапишет эти правила с правилами из styles.css.

Базовый пример такого поведения:

div, div.red{
    color:red;
}
div{
    color:blue;
}

Это приведет к синему цвету во всех <div>, кроме того, который помечен классом red.

0 голосов
/ 17 марта 2012

Я думаю, позиция, которую вы вставили, это проблема.Ваша страница сначала загружает определения IE, затем добавляет ваш CSS, который должен быть «по умолчанию» для всех браузеров.Теперь, если есть определения для тех же элементов, что и в вашей IE-версии, они просто переопределят их.

0 голосов
/ 17 марта 2012

Из приведенной информации я могу только попытаться угадать: для меня кажется, что "/css/styles.css" перезаписывает некоторые свойства CSS "/css/stylesie.css", поскольку они включены после.Поэтому я постараюсь включить его раньше:

<link rel="stylesheet" type="text/css" href="/css/styles.css" />

<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...