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

chapy21 4 Messages postés jeudi 18 février 2010Date d'inscription 17 avril 2012 Dernière intervention - 15 juil. 2010 à 21:33 - Dernière réponse : chapy21 4 Messages postés jeudi 18 février 2010Date d'inscription 17 avril 2012 Dernière intervention
- 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
jdmcreator 656 Messages postés samedi 30 décembre 2000Date d'inscription 20 juillet 2012 Dernière intervention - 21 juil. 2010 à 04:49
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 !

Merci jdmcreator 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de jdmcreator
chino18 82 Messages postés jeudi 22 avril 2004Date d'inscription 1 avril 2011 Dernière intervention - 16 juil. 2010 à 09:15
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
chapy21 4 Messages postés jeudi 18 février 2010Date d'inscription 17 avril 2012 Dernière intervention - 16 juil. 2010 à 19:37
0
Merci
Merci beaucoup pour le code et le conseil
Commenter la réponse de chapy21
chino18 82 Messages postés jeudi 22 avril 2004Date d'inscription 1 avril 2011 Dernière intervention - 19 juil. 2010 à 08:38
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
chapy21 4 Messages postés jeudi 18 février 2010Date d'inscription 17 avril 2012 Dernière intervention - 23 juil. 2010 à 10:42
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.