Хаки для Internet Explorer 7

Главная » Уроки » CSS

Под словом «хак» подразумевается специальный прием, который применяется для изменения стиля отображения станицы в определенном браузере. Применение хаков вызвано, прежде всего, наличием ошибок в самих браузерах, которые приводят к тому, что различные браузеры одну и ту же страницу отображают по-разному, в результате чего читать goldline pro отзывы или какую-нибудь статью – становится неудобно. Поэтому применение хаков позволяет создать, так называемую, кроссбраузерную верстку.

Хаки для Internet Explorer 7

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

Устранение ошибки с !important привело к появлению новой – добавление после свойства восклицательного знака и любого набора символов приводит к тому, что браузер вместо игнорирования кода, будет его корректно воспринимать.

Для создания хака применяется запись !ie, в результате стиль будет применяться только IE6 и IE7, все остальные браузеры будут его игнорировать.

Код:

<style type="text/css">
.hack_background {
background: yellow; /* Желтый цвет */
background: gray !ie; /* Серый цвет для IE7*/
padding: 5px; color: #ffffff;
}
</style>

В результате применения этого хака в IE фоновый цвет будет серым, а в остальных браузерах – желтым.

Следующая проблема с !important заключается в том, что браузер IE7 разрешает недопустимые символы. Например, такая запись !!important будет проигнорирована всеми браузерами, кроме IE6 и IE7, которые воспримут ее как корректную.

Код:

background: green; /* Зеленый цвет */
background: gray !!important; /* Серый цвет для IE7*/

Результат такой же, как и в первом варианте. Обратите внимание, приведенные выше примеры, с точки зрения спецификации CSS, являются невалидными.

Добавление символа * перед именем свойства является некорректным по спецификации CSS, но воспринимается браузерами до IE7.

Код:

background: green; /* Зеленый цвет */
 *background: gray !!important; /* Серый цвет для IE7*/

Следующая конструкция *:first-child+html, добавленная перед именем селектора, хоть и соответствует спецификации CSS, но работает только Internet Explorer 7.

Код:

<style type="text/css">
*:first-child+html .hack_background {
background: gray; /* Серый цвет для IE7*/
}

.hack_background{
background: yellow; /* Желтый цвет */
color: #ffffff; padding: 5px;
}
</style>

В данном примере цвет фона в IE7 будет серым, а в остальных браузерах желтым.

Категория: CSS; Урок сделан: 22.06.2012; Просмотров : 1295; Комментарии : 1; Рейтинг : 0.0/0;
Всего комментариев: 1

Автор: lindagoldenmayer (02.06.2016 15:18)

http://msk-intim.com/ankets/dubrovka


Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]





Copyright © 2010 - 2017 Pro100uCoz.ru