307 Quand Internet Explorer snobe Microsoft Office
mardi 09 mars 2010 • 23:30 (CET)
Il m'est arrivé aujourd'hui le plus amusant des bugs que j'ai eu l'occasion de rencontrer durant ma vie de webmestre.
Une personne pour laquelle je réalise un site (ou plutôt un gestionnaire de contenu, le contenu lui-même n'ayant rien à voir avec moi) m'a envoyé un courriel ce matin pour m'informer que ledit site rencontrait des problèmes d'affichage sous Internet Explorer. Ce qui n'a rien de surprenant, MSIE étant une machine à problèmes. Plus spécifiquement, les deux pages actuellement disponibles n'affichaient aucun contenu.
Comme, malheureusement, MSIE est toujours largement utilisé et qu'on ne peut pas toujours se permettre de l'ignorer, je me suis attelé au problème.
Premier constat : si le graphisme du site est tout cassé tout pas beau sur MSIE 6, il passe très bien sur les versions 7 et 8, ce qui me remplit de joie car je vais pouvoir ignorer la situation de la version 6 :D
Deuxième constat : en effet, la page semble ne charger qu'en partie, jusqu'au titre plus précisément. Évidemment mon premier réflexe est logique : je consulte la source de la page pour m'apercevoir que l'ensemble du contenu de la page est bien chargé : il ne s'agit donc pas d'un problème de script ou autre du même genre (ou plutôt c'est une confirmation qu'il ne s'agit pas d'un tel problème puisque le site passe très bien sous Firefox ou Chromium, merci).
Comme visiblement c'est le contenu en lui-même qui pose problème, je décide de le copier-coller depuis le site vers une nouvelle page pour voir. Et là, comme par enchantement, la nouvelle page s'affiche tout à fait correctement.
Suite logique, je consulte la source de la nouvelle page et je la compare à l'ancienne. Et c'est là que je vis tout un tas de balises étranges et très probablement inutiles car apposées derrières une conditionnelle. Il s'agit tout simplement des balises de formatage de Microsoft Office (MSO) ! Parce que le contenu de la page a certainement été copié directement depuis Microsoft Word !
Les balises d'info mso constituent la seule différence entre le code des deux pages, la fautive à gauche, la fonctionnelle à droite.
Maintenant je suppose que toute personne familière avec Microsoft Word me dira que c'est normal, c'est la Microsoft way of life, etc... à ma décharge, je n'ai pas touché à Microsoft Office depuis des lustres. Non, ce qui m'a vraiment causé un accès de fou rire, c'est que si Firefox ignore purement et simplement les balises bizarro-microsoftiennes, MSIE, lui, cale dessus ! Il cesse tout simplement de rendre le code HTML !
Qui l'eût cru ? MSIE serait incompatible avec Microsoft Office ! C'est vrai qu'ils n'en sont plus à une contradiction près...1
1. Un exemple de contradiction microsoftienne ? Facile ! Microsoft travaille avec le W3C qui promeut des standards, tout en rechignant et en prenant son temps à les implémenter dans ses logiciels !