CSS
Hack di Internet Explorer
Ricerca…
Osservazioni
Questi "hack" possono essere utilizzati per indirizzare un browser / client specifico. Questo può essere usato per aggirare le differenze di rendering del browser applicando gli stili in uno di quei wrapper elencati sopra.
Modalità Contrasto elevato in Internet Explorer 10 e versioni successive
In Internet Explorer 10+ e Edge, Microsoft offre il selettore di mezzi multimediali ad -ms-high-contrast per esporre l'impostazione "Contrasto elevato" dal browser, che consente al programmatore di regolare gli stili del proprio sito di conseguenza.
Il selettore -ms-high-contrast ha 3 stati: active , black-on-white e white-on-black . In IE10 + non aveva none stato, ma non è più supportato in Edge in futuro.
Esempi
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: black-on-white) {
.header{
background: #fff;
color: #000;
}
}
Ciò cambierà lo sfondo dell'intestazione in bianco e il colore del testo in nero quando la modalità a contrasto elevato è attiva e si trova in modalità black-on-white .
@media screen and (-ms-high-contrast: white-on-black) {
.header{
background: #000;
color: #fff;
}
}
Simile al primo esempio, ma in particolare seleziona solo lo stato white-on-black e inverte i colori dell'intestazione su uno sfondo nero con testo bianco.
Maggiori informazioni:
Documentazione Microsoft su -ms-high-contrast
Solo Internet Explorer 6 e Internet Explorer 7
Per scegliere come target Internet Explorer 6 e Internet Explorer 7, avvia le tue proprietà con * :
.hide-on-ie6-and-ie7 {
*display : none; // This line is processed only on IE6 and IE7
}
I prefissi non alfanumerici (diversi da trattini e caratteri di sottolineatura) vengono ignorati in IE6 e IE7, quindi questa modifica funziona per qualsiasi property: value unprefixed property: value coppia di property: value .
Solo Internet Explorer 8
Per @media \0 screen { } target Internet Explorer 8, racchiudi i selettori nella @media \0 screen { } :
@media \0 screen {
.hide-on-ie8 {
display : none;
}
}
Tutto tra @media \0 screen { } viene elaborato solo da I
Aggiunta del supporto Inline Block a IE6 e IE7
display: inline-block;
La proprietà di display con il valore di inline-block non è supportata da Internet Explorer 6 e 7. Una soluzione per questo è:
zoom: 1;
*display: inline;
La proprietà zoom attiva la funzione hasLayout degli elementi ed è disponibile solo in Internet Explorer. Il *display assicura che la proprietà non valida venga eseguita solo sui browser interessati. Gli altri browser ignoreranno semplicemente la regola.