Feuille CSS en fonction de la resolution [Résolu]

Signaler
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Statut
Membre
Dernière intervention
17 avril 2012
-
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Statut
Membre
Dernière intervention
17 avril 2012
-
Bonsoir

Je suis en train de créer mon premier site internet et j'aimerai choisir un fichier css en fonction de la résolution d'écran de l'internaute. J'ai déjà essayé plusieurs chose mais sans aucun succès.
Voila mon code (ne fonctionne pas):

<head>

<script language="javascript">
if (screen.width <=640)
document.write=('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style1.css" />');
else if (screen.width >= 800)
document.write=('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style2.css" />');
</script>
</head>

Pourriez vous m'aidez sa serait cool :p

Merci

5 réponses

Messages postés
647
Date d'inscription
samedi 30 décembre 2000
Statut
Membre
Dernière intervention
20 juillet 2012
5
Ton erreur est ici :
document.write=('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style1.css" />'); 


Le "=" n'a pas sa place :
document.write('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style1.css" />'); 


<head> 

<script language="javascript"> 
if (screen.width <=640) 
document.write('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style1.css" />'); 
else if (screen.width >= 800) 
document.write('<link rel="stylesheet" media="screen" type="text/css" href="../Style/style2.css" />'); 
</script> 
</head> 


document.write est une fonction et non une propriété.

JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
Messages postés
82
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
1 avril 2011
1
Salut.

Il y a une solution: stocker la résolution dans des variables PHP, pour ensuite s'en servir dans une condition PHP qui fera ceci:

<head>
<?php
if(isset($_GET['Largeur'])) {
   if($_GET['Largeur']) <=640){
      echo '<link rel="stylesheet" media="screen" type="text/css" href="../Style/style1.css" />';
   }
   else if ($_GET['Largeur']) >= 800){
      echo '<link rel="stylesheet" media="screen" type="text/css" href="../Style/style2.css" />';
   }          
}
?>
</head>


Vas voir ici pour plus de détails.

Mais dans tous les cas, je pense que switcher de css en fonction de la résolution n'est pas une bonne idée.
Le mieux serait que tu retouches ta feuille css afin qu'elle s'adapte le mieux possible quelque soit la taille de la fenêtre.

Je sais que c'est chiant mais c'est la solution la plus propre.


-- message approuvé par Jean-Claude Van Damme --
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Statut
Membre
Dernière intervention
17 avril 2012

Merci beaucoup pour le code et le conseil
Messages postés
82
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
1 avril 2011
1
No problemo

N'oublies pas de cliquer sur "réponse acceptée".
A+


-- message approuvé par Jean-Claude Van Damme --
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Statut
Membre
Dernière intervention
17 avril 2012

Proposition très appropriée à mon problème.

Merci beaucoup