Правила CSS не работают в IE 8 - PullRequest
1 голос
/ 14 марта 2012

У меня есть регистрационная форма, где применяются эти правила CSS. когда пользователь отправляет неправильные или пустые данные в некоторые обязательные поля, мы выделяем поле ошибки КРАСНОЙ ГРАНИЦЕЙ вокруг поля ошибки. Это не работает в IE. КРАСНАЯ Граница появляется в FF и сафари.

У меня есть такой код:

#errorMsg {
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    -khtml-border-radius: 5px; 
    border-radius: 5px; 
    background:#FEE !important; 
    border:1px solid #C33; 
    color:#C33 !important; 
    font-size:110%; 
    font-weight:bold; 
    margin: 20px 0; 
    padding:15px; 
    text-align:left;
}

.parentError {
    background: #FEE; 
    border: 1px solid #C33; 
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px; 
    -khtml-border-radius: 5px; 
    border-radius: 5px; 
    left: -10px; 
    margin-bottom: 10px; 
    padding: 10px; 
    position: relative; 
    top: 0px; 
    width: 635px;
}

[type=text].elementError, 
[type=password].elementError,
select.elementError {
    border: 2px solid #C33;
}

Работает в Firefox 8 и Safari, но не в IE 8.

Я новичок в CSS. Любая помощь приветствуется.

Ответы [ 3 ]

1 голос
/ 14 марта 2012

В IE вы можете решить, какой CSS вы хотите представить.Вы также можете решить представлять разные CSS в разных версиях IE.

Вы можете создать таблицу стилей только для IE

Пример:

Target IE 8 и HIGHER:

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

Этот код будет работать только в IE 8 и выше.означает, что вы можете создать файл CSS для 8 и выше.и другой файл для более низкой версии, чем 8.

Это всего лишь пример.Этот метод дает вам много силы.

Вы можете увидеть эту ссылку .

1 голос
/ 14 марта 2012

IE8 не поддерживает элементы CSS3, такие как -moz-border-radius, -webkit-border-radius. Но FF8 и Safari оба поддерживают элементы CSS3. Вот почему CSS3 работает в FF8 и Safari.

Вы также можете проверить текущую реализацию статусов модулей CSS3 на http://www.css3.info/modules/

Также вы можете посмотреть таблицу совместимости браузера здесь.

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

Добавьте следующую строку в самом начале вашего HTML-документа:

<!doctype html>

Без него или какого-либо другого объявления типа документа определенного типа IE работает в режиме Quirks .Это означает, среди прочего, что он не распознает многие функции CSS, такие как селекторы атрибутов (например, [type=text]).

Для устойчивости, чтобы работать даже в IE 6 (который не распознает селекторы атрибутов в любомрежим), рассмотрите возможность использования более простых селекторов, таких как input.elementError, и назначьте класс elementError таким input элементам, только для которых вы хотите этот стиль.

...