Хак — это специальная css-конструкция, которую одни браузеры понимают, а другие игнорируют. Использование хаков, как правило, говорит о непрофессиональности верстальщика. Но бывают встречаются случаи, когда все-таки без хаков не обойтись и их использование является единственным случаем избавления от проблем.

 

Если есть возможность избежать использования хаков, то лучше их не использовать. А для исправления ошибок в Internet Explorer лучше использовать отдельный файл, который можно подлкючить с помощью условных комментариев (векторов версий).

Internet Explorer 7

Хак Пример
 *+html *+html .class{color:green}
* .class{
    *color:green
}
// .class{
    //color:green;
}

 

Internet Explorer 8

Хак Пример

@media \0screen{ }

@media \0screen{.color {color: #f00} }

 

Internet Explorer 10

Хак Пример

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {.color {color: #f00} }

Векторы версий Internet Explorer 10 уже не поддерживает, поэтому отдельного файла со стилями не получится сделать через условные комментарии.

 

 

Firefox

Хак Пример

@-moz-document url-prefix() {}

@-moz-document url-prefix() {.color {color: #f00} }

 

Chrome & Safari

Хак Пример
body:not([x|x])

body:not([x|x]) .class{
    color:green;
}

@media all

@media all and (-webkit-min-device-pixel-ratio:0) {
    .class{
        color:green;
    }
}

 

Opera

Хак Пример
noindex:-o-prefocus, .class{ }

noindex:-o-prefocus, .MyClass {color:red;}

 
comments powered by HyperComments
Понравился материал - нажмите, пожалуйста, на кнопку
=)