Hello World,
calimo a écrit :L'import à l'intérieur même d'une CSS est parfaitement autorisé, et doit absolument figurer tout en haut, avant n'importe quelle règle (même une @media) pour fonctionner !
C'est bien ce que je pensais, sinon, je ne vois pas du tout pourquoi Firefox aurait pu lire correctement les styles en question.
calimo a écrit :Cela dit IE a des fois de la peine à la comprenette, il ne supporte pas les médias sur le @import
C'est le moins qu'on puisse dire
Je crois même qu'en manière de gestion de CSS, on peut dire qu'il ne comprend
en général pas grand chose
calimo a écrit :Je ne rigole pas (ou plutôt si, je me pouffe de rire tellement c'est hallucinant !

), d'ailleurs tu peux essayer de créer une page "url(MonStyle/section1.css) all;" sur ton site dans laquelle tu mets un truc facilement repérable du style body {background:red} et je parie qu'IE t'affichera la page sur fond rouge
Effectivement, la démonstration est... déconcertante
Ce qui reste étonnant, c'est que dans les tests que j'ai fait, IE continue malgré tous mes efforts à n'appliquer
aucune couleur pour les différents types de liens : il prend en compte les polices et les tailles, mais
pas les couleurs
calimo a écrit :Au passage, tiens-moi au courant, j'aimerais bien savoir s'il n'y a que sur mon site que ça fait ça !
Hélas, trois fois hélas : je crois bien que non. IE est rétif aux styles. Point barre
calimo a écrit :Pour "contourner" le problème, j'ai personellement choisi la solution de facilité [etc.] Ainsi le site s'affiche brut dans IE, s'il est bien conçu sémantiquement parlant il sera tout à fait navigable.
J'ai aussi choisi finallement de contourner le problème, mais de façon encore plus
radicale (puisque, comme tu le dis, le site brut doit être navigable dans IE sans aucun style...).
Comme je me demande cependant si je n'ai pas été un peu trop radical, je vous soumets mon bout de script :
Code : Tout sélectionner
$navigator = $_SERVER["HTTP_USER_AGENT"];
if (ereg("Mozilla/5.0", $navigator)) {
echo "<link rel="icon" type="image/png" href="styles/icon.png"/>\n";
echo "<style type="text/css" title="MonStyle" media="all">@import url(styles/MonStyle.css);</style>\n";
$advert = "(ici un texte précisant que les styles sont pris en charge)";
}
else {
$advert = "(ici un texte précisant que les styles sont neutralisés)";
}
Pour tout dire, je ne suis pas certain que d'autres navigateurs capables de lire correctement les styles n'aient pas été trop radicalement mis de côté (pour ceux qui veulent vérifier avec leur navigateur, vous pouvez
cliquer par ici pour voir si ça fonctionne chez vous : d'avance merci de me dire
s'il y a un problème avec autre chose qu'IE).
calimo a écrit :Sinon vu que tu importe à la base ta css avec un @import (moi j'utilise les link), tu peux facilement importer tes feuilles secondaires à partir de là
Oui, bien entendu, j'y ai pensé. Mais je préfère me garder une sortie de secours dans le cas où je voudrais par la suite créer d'autres styles alternatifs pour ce site : une seule feuille par style, mais dans certains cas, des sous-éléments à prendre en compte selon le style choisi... Mais c'est vrai que ce n'est pas la solution la plus simple...
Merci beaucoup pour toutes ces explications...
Ciao,