Bonjour,
Cela fait un moment que je sèche sur la question. Je ne sais pas s'il est de bon ton de donner l'adresse de son site ici... j'ai une page test, je vous la donne, elle peut être utile : http://smilissimo.free.fr/tests.html
Avec Mozilla, tout passe très bien, pas de problèmes. Par contre avec Internet Explorer (v.6 sp1, je ne sais pas avec d'autres ), c'est nettement moins bien.
Alors je vais vous expliquer en détail, c'est un peu long mais c'est vraiment compliqué.
Il y a quelques semaines de ça, j'ai remarqué un nombre affolant d'erreurs 404 sur mon site. Quand je dis affolant, c'est qu'en quelques jours ils ont dépassé les chiffres de plusieurs semaines de ma page d'accueil
J'ai essayé de trouver d'où pouvait venir le problème. En ajoutant un petit script php à ma page 404, je me suis rendu compte que les 90 % des erreurs venaient de MSIE (Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;)) et qu'ils étaient appelés par groupes de 11 depuis une même page
(Il faut savoir que mon site étant dédié à Mozilla, IE n'y représente pas plus de 5% des visites, d'où ma suspiscion...)
Bien, me dis-je, voilà qui est étrange ! (c'est le moins qu'on puisse dire ).
Je fais donc un petit test en local (avec easyphp), je regarde les logs... et là une surprise m'attend ! J'ai des suites de 11 erreurs 404 du style :
http://127.0.0.1/styles//url("base_all.css") all http://127.0.0.1/styles//url("base_print.css") print etc.
Ainsi donc, voilà que je vois que ça correspond exactement à mes 11 feuilles de styles, insérées avec des _AT_import dans 3 feuilles différentes.
Pourtant, il me semblait que Internet Explorer connaisait les _AT_import, vu que c'est justement la technique utilisée pour masquer des feuilles de styles aux vieux Netscape 4.7. Après consultation de diverses sources, il me semble même que IE est censé supporter les syntaxes _AT_import avec un media spécifié.
Mais pourquoi pas ici
J'ai essayé d'enlever les guillemets, les url(), puis les guillemets et les url() en même temps... rien n'y fait
J'ai donc créé un petit testcase pour voir. Le nombre de mes feuilles de style a un peu augmenté depuis, mais ça ne change rien au fond du problème.
J'ai créé des fichiers portant le nom de ceux cherchés par IE (par exemple un http://smilissimo.free.fr/styles/url(base_all.css) all ). Plus d'erreurs 404 depuis mais fond du problème est toujours là.
Sur la page citée au début, (http://smilissimo.free.fr/tests.html), j'ai ajouté dans un div le nom des feuilles. Par défaut, le bloc est caché.
Dans les feuilles cherchées par IE, j'ai fait réafficher le bloc et colorer la ligne correspondant à la feuille en rouge.
Première surprise : tout n'est pas rouge Une erreur de codage de ma part n'est pas à exclure... mais j'ai vérifié, ça a pas l'air
Il faut savoir que j'insère 5 feuilles de styles avec des <link> :
http://smilissimo.free.fr/styles/base.css
http://smilissimo.free.fr/styles/menuhorizontal.css
http://smilissimo.free.fr/styles/menuvertical.css
http://smilissimo.free.fr/styles/technique.css et
http://smilissimo.free.fr/styles/stryer.css
Chacune sauf la première a un titre. Dans ces feuilles sont appelées les diverses feuilles de styles par ces maintenant fammeux _AT_import, comme vous pourrez le voir.
Je sais que IE ne supporte pas la syntaxe avec plusieurs medias, mais je réglerai ce problème plus tard, là le problème est plus général.
Voilà, je suis désolé d'avoir été si long, j'espère que c'est suffisemment précis pour que quelqu'un ait une réponse à cette question : que faire
Merci d'avance
PS: on a pas le droit à plus de 10 émoticones ? Même dans un long message comme ça ?