28173 sujets

CSS et mise en forme, CSS3

Bonjour, j'ai essayé de faire un style switcher pour mon site, en prenant la méthode trouvée sur le site Alistapart. En gros, j'ai mis un fichier switcher à la racine de mon site avec ce code :
<?php
setcookie ('sitestyle', $set, time()+31536000,
	'/', 'yourdomain.com', '0');
header("Location: $HTTP_REFERER");
?>

Puis j'ai défini des boutons comme ça :
<a href="./switcher.php?set=bleu">
Bleu</a>

Et dans le <head> de chaque page j'ai mis ça :
<link rel="stylesheet" type="text/css" 
	media="screen" title="User 
Defined Style" href="<?php echo 
(!$sitestyle)?'defaultstyle':$sitestyle ?>.css" />


mon site est -www.linguistics4u.eu, si vous soulez voir. Le problème c'est que ça marche super sous FF, mais pas du tout sur IE7 Smiley fache . Je me demandais pourquoi. Quelqu'un aurait-il une solution SVP, merci beaucoup. V.
Modifié par vince1975 (04 Dec 2006 - 12:16)
Déjà, ça ne marche pas du tout chez moi, puisque j'ai désactivé les referrers. Smiley cligne

Question bête : dans ton exemple, tu écris 'yourdomain.com'. Tu as bien remplacé ça par ton nom de domaine ?

Il faudrait que ton code soit un peu plus propre pour l'affichage de $sitestyle dans le PHP, ça peut être dangereux écrit comme ça.

J'ai aussi des erreurs JavaScript avec IE7 (mais je suppose que ça vient du code que tu inclus).

Attention également au title sur l'élément link.
Merci pour la réponse. Oui, j'ai remplacé le nom de domaine, ce code n'est pas de moi, c'est un tuto, j'essaye de me mettre au PHP, mais j'ai encore bien du mal. Smiley confus . Pour l'élément <title> j'ai regardé le lien. Tu me suggères de l'enlever? Il ne doit pas servir à grand chose si? Et sinon je ne comprends pas pour $stylesheet écrit comme ça. Je dois l'écrire comment?
Je viens de faire un tour dans le profil pour récupérer mon avatar, j'avais pas pris le temps de le faire avant. C'est super ce principe de choix de feuilles de style avec capture d'écran.
Je ne comprends pas, ça marche bien chez moi avec IE en fait.

Pour l'attribut (et non l'élément Smiley cligne ) title, je pense qu'il est en effet préférable de l'enlever.

En ce qui concerne $stylesheet, il vaut mieux passer par le tableau $_GET et échapper la valeur dans le HTML (avec htmlSpecialChars par exemple).
Merci pour ta réponse, j'ai tenté sur l'ordi de ma colloc, et ça marche aussi, vraiment je n'y comprends rien à cette histoire. Je vais enlever l'attribut <title>, sinon je ne comprends pas grand chose à ta dernière phrase (novice, désolé, mais j'apprends Smiley lol ).
Je me permet de relancer pour savoir si les gens qui ont IE ont des problèmes avec le style switcher sur mon site, je ne sais pas trop quoi penser, ça va pour certains, pas pour d'autres. Si c'est un problème de config j'aimerais le comprendre afin de mettre un message du genre "pour utiliser cette fonctionnalité, merci de..." Merci pour vos avis.