css en fonction de la plateforme

pawlow

Membre confirmé
22 Septembre 2004
27
1
52
Salut à tous,

je suis en train de fabriquer un petit site web. Et je cherche à écrire un petit script (tout est petit, car je suis un petit débutant) qui en fonction de la pateforme du visiteur lancera une feuille de style Mac ou une autre Windows.
Mais ça ne marche pas :rose:
Voilà la bête :
<script language="JavaScript" type="text/JavaScript">
<!--
function stylesup(){
function Plateforme(){
if (navigator.appVersion.indexOf("Win") > -1) {return "Windows";}
if (navigator.appVersion.indexOf("Macintosh") > -1) {return "Macintosh";}
if (navigator.appVersion.indexOf("X11") > -1) {return "Unix";}
if (navigator.appVersion.indexOf("Unix") > -1) {return "Unix";}
if (navigator.appVersion.indexOf("Linux") > -1) {return "Unix";}
return "Unknown";}

if (Plateforme = "Macintosh") {
document.write('<link href="styles/mac. css " rel="stylesheet" type="text/ css " />');
}
if (Plateforme = "Unix") {
document.write("<link rel=stylesheet href=\"styles\/unix. css \" type=\"text\/ css \">");}
if (Plateforme = "Windows") {
document.write("<link rel=stylesheet href=\"styles\/win. css \" type=\"text\/ css \">");}
}
stylesup();
//-->
</script>

Une aide, une info, svp !!!
 
Hello,

Si j'étais toi, je ferais ça en PHP... Tu fais une page de style style.php qui détecte la plateforme et tu retournes un style différent suivant la machine.

Et autrement, je te conseillerais plutôt de faire une page web qui soit visible de la même manière sur toutes les plateformes... c'est possible ;)
 
molgow a dit:
Hello,

Et autrement, je te conseillerais plutôt de faire une page web qui soit visible de la même manière sur toutes les plateformes... c'est possible ;)

C'est le but recherché :rose:

je ne connais rien au PHP, mais je vais essayer de trouver un tutoriel sur le net. Espérons que ce soit plus simple que la version javascript.
 
Si ton but est de faire afficher ta page de la même manière sur tous les navigateurs sache qu'il existe quelques trucs &#8211; encore appelés hack &#8211; qui permettent de gérer cela. Tu devrais aussi nous en dire plus sur les problèmes rencontrés (généralement c'est du positionnement et du dimensionnement lebox model hack y répond souvent ;)

bref... dis-nous en plus :zen:
 
Voilà où j'en suis :

<script language="JavaScript" type="text/javaScript">
<!--
if ((navigator.appVersion.indexOf("Win") != -1)
&& (navigator.appName.indexOf("Explorer") >= 0)) {
document.write("<LINK REL=\"stylesheet\" HREF=\"winIE.css \" TYPE=\"text/ css \">"); }
else if ((navigator.appVersion.indexOf("Win") != -1)
&& (navigator.userAgent.indexOf("Firefox") >= 0)) {
document.write("<LINK REL=\"stylesheet\" HREF=\"winMOZ.css \" TYPE=\"text/ css \">"); }
else if ((navigator.appVersion.indexOf("Mac") != -1)
&& (navigator.userAgent.indexOf("Firefox") >= 0)) {
document.write("<LINK REL=\"stylesheet\" HREF=\"macMOZ.css \" TYPE=\"text/ css \">"); }
else if ((navigator.appVersion.indexOf("Mac") != -1)
&& (navigator.userAgent.indexOf("Safari") >= 0)) {
document.write("<LINK REL=\"stylesheet\" HREF=\"macV.css \" TYPE=\"text/ css \">"); }
else {
document.write("<LINK REL=\"stylesheet\" HREF=\"macIE.css \" TYPE=\"text/ css \">"); }
// -->
</script>

Pas encore testé sous Windows, mais sous Mac, Firefox et safari reconnaissent leur CSS respective, mais IE n'en reconnaît aucune. Le texte afférent n'est pas mis en forme !!
J'ai essayé les commentaires conditionnels <!--[if IE]> placés avant le script, après, ça ne marche pas non plus.
Je veux effectivement que mon texte apparaisse de façon identique sous tous les navigateurs et plateformes, enfin les 3 gros (IE, Firefox, Safari). Or il y a de nettes différences de positionnement et de taille de police entre eux.
J'y arrive pas :(
 
Bon, problème résolu pour IE sous Mac par le biais d'un hack :
<style type="text/css">
/*\*//*/
@import "macIE.css";
/**/
</style>

Maintenant c'est IE sous Windows qui ne reconnaît pas la css !!!!! :mad: