# Feuille de style pas chargée sous Firefox et Mozilla



## rosebud (29 Septembre 2005)

Bonjour,

J'ai développé un petit site web de quelques pages en statique sur une page temporaire chez Free. Une fois terminé je l'ai testé sur tous les navigateurs mac et PC en ma possession pour faire en sorte qu'il s'affiche bien partout, ce qui est le cas.

Je viens de le passer sur l'hébergement du client et là, mystérieusement, la feuille de style n'est pas chargée quand je consulte le site avec Firefox ou Mozilla (mac ou PC idem). Elle est bien sûr présente et est appelée avec la syntaxe habituelle : 

<link href="style.css" rel="stylesheet" type="text/css">   dans la balise <head>.

Je n'ai jamais rencontré ce problème et ne sais pas d'où il provient.
Y a-t-il un truc spécifique chez cet hébergeur (a priori une machine chez Vério) ?
Puis-je mettre un chemin d'accès en adresse absolue pour résoudre le problème ?

Si vous avez des idées ? merci d'avance )


----------



## fredmac75 (29 Septembre 2005)

rosebud a dit:
			
		

> Bonjour,
> 
> J'ai développé un petit site web de quelques pages en statique sur une page temporaire chez Free. Une fois terminé je l'ai testé sur tous les navigateurs mac et PC en ma possession pour faire en sorte qu'il s'affiche bien partout, ce qui est le cas.
> 
> ...



Pourrions-nous avoir l'adresse SVP ?


----------



## Niconemo (29 Septembre 2005)

Oui...

Et vérifie bien tes "{" et tes "}" dans la CSS... (les abscences ou les doublons...) il semble que MSIE soit assez permissif sur ce point...


----------



## rosebud (29 Septembre 2005)

Hello,

L'adresse du site de développement :
Site de dev

(tous les liens ne sont pas bons mais c'est pas grave)

Et l'adresse définitive :
Site terminé


----------



## fredmac75 (29 Septembre 2005)

Il me semble que c'est ton javascript qui te fout la zizani.

Pour en avoir le c½ur net, supprime le totalement (le javascript), et voie si ta page se charge correctement avec FF


----------



## rosebud (30 Septembre 2005)

fredmac75 a dit:
			
		

> Il me semble que c'est ton javascript qui te fout la zizani.
> 
> Pour en avoir le c½ur net, supprime le totalement (le javascript), et voie si ta page se charge correctement avec FF



Merci pour ta remarque.
Le problème c'est que le prestataire qui gère l'hébergement du client ne veut pas me donner d'accès ftp, donc c'est vraiment pas pratique pour résoudre les petits problèmes qui apparaissent sur l'hébergement final.

Heureusement avec FF j'emploie l'extension "Web Developper" qui permet de désactiver à la volée certaines parties comme le javascript par exemple (excellente extension au passage). J'ai donc testé, ça ne change rien à l'aspect du site quand le javascript est désactivé.

Le javascript sert ici à gérer le roll over sur la barre de navigation et seulement ça ; je ne pense pas qu'il soit en cause. Et puis je ne m'explique pas la différence de traitement des pages, juste en changeant d'hébergement !  Si FF étant si sensible, il le serait quel que soit l'hébergement non ?

Que penses-tu de mettre le chemin de la feuille de style en URL absolue et non relative ?


----------



## fredmac75 (30 Septembre 2005)

rosebud a dit:
			
		

> Merci pour ta remarque.
> Le problème c'est que le prestataire qui gère l'hébergement du client ne veut pas me donner d'accès ftp, donc c'est vraiment pas pratique pour résoudre les petits problèmes qui apparaissent sur l'hébergement final.
> 
> Heureusement avec FF j'emploie l'extension "Web Developper" qui permet de désactiver à la volée certaines parties comme le javascript par exemple (excellente extension au passage). J'ai donc testé, ça ne change rien à l'aspect du site quand le javascript est désactivé.
> ...


A priori cela ne vient pas de l'url. Lorsqu'on l'appelle avec http://www.call-services.fr/style.css, cela ne génère pas de 404. Donc ton url est valide. Le seul fait que j'arrive à visualiser ta css sur Safari et FF prouve que ton url n'y est pour rien.

Si cela te rassure fait quand même un essai avec une adresse en dur.


Edit
-------
C'est à ton client de te fournir les codes d'accès FTP et non à son hébergeur.


----------



## fredmac75 (30 Septembre 2005)

Peut être une autre solution du coté de la syntaxe. Met les majuscules de ta feuille css en minuscules.


----------



## rosebud (30 Septembre 2005)

fredmac75 a dit:
			
		

> A priori cela ne vient pas de l'url. Lorsqu'on l'appelle avec http://www.call-services.fr/style.css, cela ne génère pas de 404. Donc ton url est valide. Le seul fait que j'arrive à visualiser ta css sur Safari et FF prouve que ton url n'y est pour rien.
> 
> Si cela te rassure fait quand même un essai avec une adresse en dur.
> 
> ...



Oui, l'url est correcte, je me posais juste la question d'une éventuelle particularité de paramétrage du serveur web. J'essaye juste de cerner l'origine du problème, jamais rencontré jusqu'à présent.

Quant au code du FTP, c'est un peu compliqué (et pas l'objet de ce fil). On ne me donne pas les codes sous prétexte que plusieurs sites clients sont sur le même compte. Mais sur le principe tu as raison, j'aurais dû jouer la fermeté et refuser de livrer sans les codes.

Merci pour tes suggestions ; je vais essayer de chercher des pistes.


----------



## rosebud (30 Septembre 2005)

fredmac75 a dit:
			
		

> Peut être une autre solution du coté de la syntaxe. Met les majuscules de ta feuille css en minuscules.




Hum? Je vais essayer de faire un "bundle" de mise à jour, sinon l'autre va pêter un plomb si je lui demander de charger 50 fois les fichiers en ligne? (géniaaaaaal  ) :mouais: 

Sinon, je n'ai jamais rencontré de problèmes avec des maj dans une css, surtout que là tout saute, y compris les class en minuscules. Mais bon? on va tester !


----------



## rosebud (30 Septembre 2005)

Bon, toute ma feuille de style est en minuscules, ça ne change pas grand chose. La recherche continue.

Au passage j'ai aussi installé les pages chez un autre hébergeur que Free ou Vério et le site se comporte normalement avec Firefox.


----------



## Niconemo (30 Septembre 2005)

Tiens c'est marrant, quand j'affiche la feuille de style avec l'extension WebDev, de FF non seulement il n'a aucun problème pour l'afficher dans la zone de gauche (donc elle est bien liée au document) mais en plus au moment où elle apparaît, le document est correctement mis en forme. Si je referme la zone d'édition de CSS de WebDev, le document n'est à nouveau plus stylé...

Ça me fait penser à un sujet récent... je vais le chercher


Edit:
non c'était sur un autre forum on dirait... la dernière fois que j'ai participé à cet autre sujet on suspectait un javascript de "switch" de CSS


----------



## rosebud (30 Septembre 2005)

Hum, étrange ! Je continue à chercher aussi.


----------



## fredmac75 (30 Septembre 2005)

Niconemo a dit:
			
		

> Tiens c'est marrant, quand j'affiche la feuille de style avec l'extension WebDev, de FF non seulement il n'a aucun problème pour l'afficher dans la zone de gauche (donc elle est bien liée au document) mais en plus au moment où elle apparaît, le document est correctement mis en forme. Si je referme la zone d'édition de CSS de WebDev, le document n'est à nouveau plus stylé...
> 
> Ça me fait penser à un sujet récent... je vais le chercher
> 
> ...



oui, nico, j'avais également lu quelque chose sur les extensions de FF et certains problèmes d'affichage de CSS. Maintenant reste à trouver où ?


----------



## Niconemo (30 Septembre 2005)

Hé je vois qu'il y a un style switcher dans ton code, t'es sur que ça ne vient pas de là ?


----------



## Niconemo (30 Septembre 2005)

Trouvé : http://forums.macg.co/vbulletin/showthread.php?t=112866

Mais ce n'est pas tout à fait le même cas... des similitudes frappantes quand-même


----------



## Niconemo (30 Septembre 2005)

Deux pistes sinon : 

1 - pb encodage des fichiers (mais peu probable)

2 - as tu essayé avec "/style.css "comme chemin au lieu de "style.css" ? Il me semble que c'est le genre de truc qui peut varier d'un hébergeur à l'autre


----------



## fredmac75 (30 Septembre 2005)

Essaie de desactiver l'extension webdev et charge ta page. Au cas ou ... et dis nous

edit
---------
 Ou encore pour aller dans le sens de nico " ../style.css". A titre perso c'est ce que j'ai à l'encodage dans ma template (../new.css), même si au final sur le code du serveur cela devient "new.css"..


----------



## Niconemo (30 Septembre 2005)

Voir même le chemin absolu complet avec http et tout le bazar

(au fait, je viens d'essayer ta page et ta CSS en local et ça marche
 edit :et en ligne aussi sur un des mes hébergements avec uniquement le fichier .htm et la css
ça va être dur de résoudre ça si tu n'as pas accès au FTP !)


----------



## Epicure1 (1 Octobre 2005)

Hello !

Je viens de lire la suite de posts.

Je suis relativement néophyte en CSS mais j'utilise toujours le type d'extension :

<link rel="StyleSheet" href="main.css" type="text/css" media="all" />

Je ne sais pas si l'ordre d'apparition a de l'importance dans le tag. Par contre, je suis certain que les maj/min ne changent rien.



			
				rosebud a dit:
			
		

> Le javascript sert ici à gérer le roll over sur la barre de navigation et seulement ça ;



As-tu pensé à utiliser les fonctionnalités de CSS pour remplacer Javascript ?

Ainsi, tu pourrais utiliser la propriété : a:link pour définir ton état normal et a:hover avec un background: url (url de ton image de bkg) pour ton roll over !


----------



## rosebud (1 Octobre 2005)

Hello, hou laaa merci pour vos réponses !! 
Bon alors dans l'ordre : 

- Concernant le problème évoqué par Nico dans un autre post que tu as cherché, en effet ce n'est pas tout à fait le même problème car sous Safari je n'ai aucun problème d'affichage et quelque part ça ne m'étonne pas si on part du principe que le navigateur le plus "W3C" et donc le moins permissif est Firefox/Mozilla.

J'aborde ensuite le point d'Epicure avant de vous dire comment j'ai avancé. Epicure, en fait pour changer mon background image dans ma navigation, je me suis appuyé sur un tutorial pas mal du tout, qui nécessite un peu de javascript (voir ici)
Sans être expert du tout ça me paraît pas assez bien fait comme page et pas trop pourri comme code. Et de toute façon je ne sais pas faire autrement pour le moment (mais on apprend tous les jours !).

J'ai donc cherché de l'aide ailleurs, et notamment un petit passage sur le blog de Marc que je remercie d'avoir répondu à mon mail. Grâce à lui donc, j'ai pu retourner sur le validator css du W3C pour m'apercevoir qu'en testant l'url de la CSS directement, j'obtiens le message d'erreur : I/O Error: Unknown mime type : text/plain

Comme j'ai élaboré cette CSS à partir d'une autre qui fonctionne très bien allleurs, je doute d'une erreur de syntaxe dans la CSS elle-même.

Avec "SafariStand" (excellent plug in), je m'aperçois que là où ça marche, la CSS est vue avec un type mime : text/css et là où ça marche pas, ben c'est text/plain.
De là je me demande (puisque ce n'est pas moi qui transfère les fichiers en ftp !) si le mode de transfert est correct pour la CSS !! Tout simplement.

J'utilise chez moi CyberDuck, qui était réglé en binaire tout le temps et sans me poser de problème. Dans ces prefs, en mode auto, il considère qu'une css doit être envoyée en mode ascii. Mais Transmit, un autre bon client ftp ne met pas les css dans les extensions devant être envoyées en ascii en mode auto. Alors, qui croire ?

En tout cas je vais me fendre d'un mail au mec qui balance mes pages en ligne pour lui demander de faire en sorte que la css reste en type mime text/css.
J'ai commme l'impression que tout ça est lié au mode de transfert ou quelque chose de proche et je suis en train de faire des tests pour obtenir une feuille en text/plain volontairement afin de comprendre ce qui a amené à ça.

Confirmation par la petite fenêtre Info de Webdéveloppeur : "la feuille de style n'a pas été chargée car son type mime "text/plain" n'est pas "text/css".


Je vous tiens au courant bien sûr 


Je viens de faire le test suivant : 
- Je récupère la css du site officiel (qui pose problème sous FF).
- Je la balance sur mon site Free, un coup en mode binaire, un coup en mode ascii et je regarde à chaque fois quel est son type mime.
- Résultat : dans tous les cas elle est bien en text/css et le validator ne me fait pas de message d'erreur.
Donc le problème ne provient pas forcément du mode de transfert.
J'avais zippé tous les fichiers avant de les envoyer au mec (qui est sur pc). Lui dézippe ça, scanne à l'antivirus. Il se passe quelque chose sur son pc pour me modifier le type mime de la css mais quoi ?

Bon, je continue mes explorations pour lire sur Alsacreations (que je connaissais de nom mais pas assez exploré) que :
"Autre cas d'erreur fréquent: en mode de rendu strict, les navigateurs Gecko (Firefox) ignorent les feuilles de styles qui ne sont pas associées par le serveur au type MIME requis, c'est à dire text/css. Utiliser par exemple http://web-sniffer.net/ pour vérifier le type MIME associé au fichier CSS, et modifier la configuration du serveur en conséquence pour envoyer l'en-tête HTTP Content-Type correct avec les CSS."

Cela viendrait donc de la configuration serveur. Donc mon problème devient : si on ne peut modifier la configuration serveur (pour du mutualisé) je suppose qu'il ne faut pas que je déclare mes pages "en mode de rendu strict".
Sachant que mes pages sont déclarées en transitionnal :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

Je fais quoi maintenant ? Une croix sur ma Css dans Firefox "parce que" le serveur n'envoie pas les bons headers ?


----------



## Epicure1 (1 Octobre 2005)

rosebud a dit:
			
		

> J'aborde ensuite le point d'Epicure avant de vous dire comment j'ai avancé. Epicure, en fait pour changer mon background image dans ma navigation, je me suis appuyé sur un tutorial pas mal du tout, qui nécessite un peu de javascript (voir ici)
> Sans être expert du tout ça me paraît pas assez bien fait comme page et pas trop pourri comme code. Et de toute façon je ne sais pas faire autrement pour le moment (mais on apprend tous les jours !).




Tu peux regarder les tutos ici pour les tricks CSS qui remplacent utilement JavaScript pour les menus déroulants :

http://css.alsacreations.com/Construction-de-menus-en-CSS/Un-menu-deroulant-en-CSS-et-XHTML-vertical-et-horizontal


Pour ce qui concerne les roll overs, j'ai lu ça dans l'excellente bible de MEYER : CSS : la référence

CSS est plus léger et standard, passons-y tous :love: (perso, j'adore : quelle clarté de code par rapport aux tables et Javascript).

Sur les standards, voir LA référence de J. Zeldman

Je n'y connaissais ni n'y comprenais pas grand-chose à CSS et en 2 semaines, grâce à ces bouquins complémentaires, je code toutes mes pages à la main et - je l'espère - proprement.

Good luck


----------



## rosebud (1 Octobre 2005)

Merci, je vais regarder ça de plus près bien sûr.


----------

