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

Messages postés
4
Date d'inscription
jeudi 18 février 2010
Dernière intervention
17 avril 2012
- - Dernière réponse : chapy21
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Dernière intervention
17 avril 2012
- 23 juil. 2010 à 10:42
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
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
656
Date d'inscription
samedi 30 décembre 2000
Dernière intervention
20 juillet 2012
3
Merci
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 !

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jdmcreator
Messages postés
82
Date d'inscription
jeudi 22 avril 2004
Dernière intervention
1 avril 2011
1
Merci
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 --
Commenter la réponse de chino18
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Dernière intervention
17 avril 2012
0
Merci
Merci beaucoup pour le code et le conseil
Commenter la réponse de chapy21
Messages postés
82
Date d'inscription
jeudi 22 avril 2004
Dernière intervention
1 avril 2011
0
Merci
No problemo

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


-- message approuvé par Jean-Claude Van Damme --
Commenter la réponse de chino18
Messages postés
4
Date d'inscription
jeudi 18 février 2010
Dernière intervention
17 avril 2012
0
Merci
Proposition très appropriée à mon problème.

Merci beaucoup
Commenter la réponse de chapy21

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.