Recherche…


Remarques

Ces «hacks» peuvent être utilisés pour cibler un navigateur / client spécifique. Cela peut être utilisé pour contourner les différences de rendu du navigateur en appliquant des styles dans l'un des wrappers répertoriés ci-dessus.

Mode Contraste élevé dans Internet Explorer 10 et supérieur

Dans Internet Explorer 10+ et Edge, Microsoft fournit le sélecteur de support -ms-high-contrast pour exposer le paramètre «Contraste élevé» du navigateur, ce qui permet au programmeur d’ajuster les styles de leur site en conséquence.

Le sélecteur -ms-high-contrast a 3 états: active , black-on-white et white-on-black . Dans IE10 +, il n'y avait none état mais cela n'est plus pris en charge dans Edge.

Exemples

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: black-on-white) {
   .header{
      background: #fff;
      color: #000;
   }
}

Cela changera l'arrière-plan de l'en-tête en blanc et la couleur du texte en noir lorsque le mode de contraste élevé est actif et qu'il est en mode black-on-white .

@media screen and (-ms-high-contrast: white-on-black) {
   .header{
      background: #000;
      color: #fff;
   }
}

Semblable au premier exemple, mais il sélectionne spécifiquement l'état white-on-black uniquement et inverse les couleurs de l'en-tête sur un arrière-plan noir avec du texte blanc.


Plus d'information:

Documentation Microsoft sur -ms-high-contrast

Internet Explorer 6 et Internet Explorer 7 uniquement

Pour cibler Internet Explorer 6 et Internet Explorer 7, démarrez vos propriétés avec * :

.hide-on-ie6-and-ie7 {
    *display : none; // This line is processed only on IE6 and IE7
}

Les préfixes non alphanumériques (autres que les tirets et les traits de soulignement) sont ignorés dans IE6 et IE7. Ce hack fonctionne donc pour toute property: value paire property: value préfixe.

Internet Explorer 8 uniquement

Pour cibler Internet Explorer 8, placez vos sélecteurs dans @media \0 screen { } :

@media \0 screen {
    .hide-on-ie8 {
        display : none;
    }
}

Tout entre @media \0 screen { } est traité uniquement par I

Ajout de la prise en charge du bloc en ligne à IE6 et IE7

display: inline-block;

La propriété d' display ayant la valeur inline-block n'est pas prise en charge par Internet Explorer 6 et 7. Une solution consiste à:

zoom: 1;
*display: inline;

La propriété zoom déclenche la fonctionnalité hasLayout des éléments et n'est disponible que dans Internet Explorer. L' *display s'assure que la propriété non valide s'exécute uniquement sur les navigateurs affectés. Les autres navigateurs ignoreront simplement la règle.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow