Jump to content

[Résolu]Détection de la résolution et choix des css


Recommended Posts

Bonjour,

Je souhaiterai afficher un logo.jpg plus étroit pour les gens ayant des écrans à faible résolution (20% des gens sont encore en 1024/768)
Comment procéder pour faire un détection d'affichage dans header.php ?
Je crois qu'on ne peut pas écrire en php dans un ficher .tpl

J'ai trouvé ce code en php, mais je n'arrive pas à l'utilisé

<?
if(!isset($_GET['r']))
{
echo "[removed]

document.location=\"$PHP_SELF?r=1&Largeur;=\"+screen.width+\"&Hauteur;=\"+screen.height;

[removed]";
}
else {    

// Code à afficher en cas de détection de la résolution d'affichage
    if(isset($_GET['Largeur']) && isset($_GET['Hauteur'])) {
              // Résolution détectée
    }
    else {
              // Résolution non détectée
    }
}

?>

Link to comment
Share on other sites

Je pourrai mettre ce code dans mon .header.tpl

>
<body {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if}>
   {if !$content_only}
</pre>
<ul>{l s='This shop requires JavaScript to run correctly. Please activate JavaScript in your browser.'}</ul>
<br><div>
       <!-- Header -->

< _script language ="javascript" >
<!--
if (screen.width >= 1024)
document . write('');
else if (screen.width < 1024)
document . write('');
 //-->
</ script>
<
Link to comment
Share on other sites

Tiens bizarre, mon post à disparu, je le remet
Merci beaucoup pour ta réponse
J'ai écris cela dans header.tpl et ca marche bien en local
C'est grave docteur de ne pas mette {literal} ?
Parceque chez moi, avec {literal} cela ne fontionne pas...

< script language="javascript">
<!--
if (screen.width <= 1024)
document . write('');
else if (screen.width > 1024)
document . write('');
 //-->
</ script>

Link to comment
Share on other sites

Ok, si ca marche comme ca, je laisse
Maintenant, j'aimerai détecter la définition de l'écran à partir de la page header.php pour choisir un css
J'ai essayé cela, mais cela fait buger mon menu deroulant!

<?php
// P3P Policies (http://www.w3.org/TR/2002/REC-P3P-20020416/#compact_policies)
header('P3P: CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"');
require_once(dirname(__FILE__).'/init.php');
/* CSS */
/*$css_files[_THEME_CSS_DIR_.'global.css'] = 'all';*/
?>

if (screen.width > 1024) <? php $css_files[_THEME_CSS_DIR_.'global.css'] = 'all'; ?> /* ligne à passer en php*/
[/ script]
<?php

Link to comment
Share on other sites

Pourquoi chercher compliqué quand c'est si simple...
Dans header.tpl, avant {$HOOK_HEADER}, mettre ceci

< script t ype="t ext / javascript > >
  if (screen.width > 1024)
     document . write("<link rel='stylesheet' type='text/css' href='{$css_dir}global.css' />");
  else if (screen.width <= 1024)
     document . write("<link rel='stylesheet' type='text/css' href='{$css_dir}global1024.css' />");
< /script >


Ici j'ai trouvé un truc bien plus compliqué posté par juliun 123, mais pourquoi se compliqué la vie si cela marche? hein ?
http://www.prestashop.com/forums/viewthread/68652/integration/solved_javascript__adapt_css_file_depending_on_screen_resolution

Link to comment
Share on other sites

J'ai besoin de sélectionner le bon css qui correspond à la résolution, voici un moyen

< script type="t ext/ javascript >
  if (screen.width > 1024 && {$cookie->id_lang}==1;)
     (document . write) (" < link rel='stylesheet' type='text/css' href='{$css_dir}global.css' / > ;");

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...