Некоторые из представленных в этом сборнике грязных хаков, не привязанных к версиям браузеров, устарели и более не применимы, имейте это ввиду и проверяйте заранее.
Под хаком подразумевается метод, позволяющий воспринимать CSS только определенному браузеру.
Хаки могут использоваться не только для исправления багов в верстке, но и в случае использования определенных особенностей браузера для ускорения рендеринга web-страницы в нём (к примеру CSS3-свойства)
Всем известные Conditional comments в IE
Несмотря на известность, в них есть много редко используемого.
Например таблица стилей, которая будет видна всем браузерам, кроме IE версий 5–8.
Этот хак может быть использован к примеру, если вы хотите для Safari и FF сделать скругленные уголки при помощи CSS, а для остальных браузеров хотите, чтобы было картинками.
А затем дополнительно отделять хаками * html и *+html стили для IE6 и IE7 соответственно. Оставшиеся стили получаются для всех IE.
Изменение рендеринга IE8
Добавление данной строчки в заголовок web-страницы изменяет тип рендеринга в зависимости от значения content (это не хак, но всё же вещь очень похожая по свойствам на хак):
«IE=7» — включает режим Strict в котором рендерятся все страницы;
«IE=EmulateIE7» — включает режим совместимости с IE7, в котором в зависимости от DOCTYPE будет применяться либо стандартный для IE7 режим рендеринга (Strict), либо quirks-режим (Quirks);
«IE=EmulateIE8» — страница форсируется в режим «IE8 Standards» вне зависимости от того, включен ли режим совместимости «Compatibility View» в браузере пользователя, а quirks-страницы отображаются в Quirks-режиме.
«IE=8» — включается режим максимального соответствия стандартам «IE8 Standards».
В случае нежелания переписывать старые проекты под IE8 — вы можете воспользоваться IE=EmulateIE7
Во всех перечисленных выше примерах .class — пример класса (можно указать вместо него id, тег и т.д.), а background:red — пример свойства и его значения.