Какова область применения * CSS-хака? - PullRequest
5 голосов
/ 14 марта 2009

Я искал взлом, чтобы решить проблему с CSS, которая у меня есть. Я использовал его для создания настраиваемого правила для Internet Explorer.

margin-top:45px;
*margin-top:0px;

Применяется ли этот хак для всех браузеров IE? Появляется ли этот хак в каких-либо версиях Firefox или Safari?

1 Ответ

9 голосов
/ 14 марта 2009

Это относится к IE7 и ниже. Но учтите, что это недопустимый CSS , и он может сломаться в любое время. См. здесь для более полного списка различных хаков CSS и на какие браузеры они влияют.

Хотя Internet Explorer 7 исправил свое поведение, когда к имени свойства добавляется префикс подчеркивания или дефиса, другие префиксы не буквенно-цифровых символов обрабатываются так же, как в IE6 . Поэтому, если вы добавите не буквенно-цифровой символ, такой как звездочка (*), непосредственно перед именем свойства, свойство будет применяться в IE, а не в других браузерах. В отличие от метода дефиса и подчеркивания, спецификация CSS не резервирует звездочку в качестве префикса, поэтому использование этого хака может привести к неожиданному поведению по мере развития спецификаций CSS.

Я бы настоятельно рекомендовал пересмотреть вопрос, действительно ли вам нужен этот хак, и если нет лучшего способа сделать то, что вы хотите.

...