alyze.info Outil d'aide au référencement

Carnet | Méthode | Documentation | Zone membre

 
Options

Suivez ici le développement d'alyze.info.

Carnet de développement  —  (RSS)

« Retour

(HS) Expression CSS et Internet Explorer

2008-08-16 16:50:46

En cherchant à corriger un gros bug d'affichage avec IE 5 et 6, j'ai découvert une propriété CSS spécifique d'Internet Explorer. Il s'agit de la propriété "expression" qui permet d'exécuter du Javascript dans une feuille de style ! Certes, ce n'est pas un joli mélange, mais ça permet de corriger certains bugs CSS "IE only" avec une grande efficacité.

Par exemple, si vous mettez un width sur auto, mais que pour obtenir un affichage correct avec IE < 7, il vous faut mettre cette propriété à "100%", on peut s'en sortir comme ceci : width: expression(navigator.appVersion.search(/MSIE [56]/) == -1 ? "auto" : "100%"); Pas beau, mais efficace !
Encore plus intéressant, l'objet this est défini, il contient l'élément que le sélecteur CSS a capturé. Pour donner à l'élément this la même largeur que son élément parent, on peut s'y prendre comme ceci : width: expression(this.parentNode.clientWidth+'px'); A n'utiliser que pour le débogage spécial IE.

Nouveau commentaire

Votre nom ou pseudo :

Votre site :
(optionnel)
Votre message :

Anti-spam :
Entrez quarante-trois en chiffres :

contact[at]alyze.info | Hébergement : OVH | 0.29