Подтвердить что ты не робот

Bang IE7 - Что это значит?

Этот титул не совсем сумасшедший. Я обещаю!

При исследовании другого вопроса я заметил следующее в таблицах стилей:

...
width: auto;
...
width: 650px!ie7;
padding-bottom: 20px!ie7;
...

Это нечетный тип условного стиля? Это ошибка? Предполагая, что это не ошибка, работает ли она со всеми версиями IE? Есть ли способ указать, что данное правило должно применяться только к версиям IE больше, чем - say - 7?

Я никогда не сталкивался с этим раньше - я всегда использовал условные комментарии для стилей, специфичных для IE (и для чего он стоит, я предпочитаю, чтобы все стили, специфичные для IE, были полностью разделены).

4b9b3361

Ответ 1

Я слышал об этом раньше, но не с точным текстом !ie7.

Я нашел ссылку здесь: http://www.javascriptkit.com/dhtmltutors/csshacks3.shtml

! Е

Internet Explorer 7 исправил один из проблемы с важным идентификатором, но у него все еще есть проблемы, когда идентификатор имеет ошибку. Если имя запрещенного идентификатора используется в место важного, Internet Explorer 7 и ниже будет обрабатывать имущество обычно вместо отказа. Поэтому в любой декларации стиля блок, вы можете включить свойства предназначенные только для использования в Интернете Explorer и добавьте идентификатор! Ie. Почти любое слово может использоваться на месте т.е.

Идентификатор! ie позволяет использовать свойство для применения в IE 7 и ниже. Это может или не может работать в будущем версии. Предупреждение: это неверно. CSS!

Итак, width: 650px!ie7; будет применяться только в IE 7 и ниже.

Фактический текст ie7 не требуется, но это разумная строка для использования, чтобы напомнить людям о цели за хаком.