[FAQ] Cacher du javascript dans du CSS (IE-Only)
Voici un fichier CSS qui sera exécuté comme du javascript par IE, mais pas par FF, de quoi combler les problèmes CSS de IE :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| html {
color : expression ((function() {
// A ne lancer que la première fois :
if (!window.isCssScriptLoaded) {
window.isCssScriptLoaded=true;
// Do something here
}
// Retourner la valeur de la propriété CSS ici :
return '';
// Celle-ci est mis à jour régulièrement !
})());
} |
Pour des codes plus courts :
Code:
1 2 3
| html {
color : expression(aJSFunction());
} |
Ou encore :
Code:
1 2 3
| html {
color : expression('aValue');
} |
Une utilisation courrante, en combinaison avec document.body.scrollTop/scrollLeft, est le positionnage fixed (pour IE6, IE7 le gérant nativement (en mode Standard-Compilance)