Développer avec RBS Change : [Résolu] détection navigateur et OS

  • 63857.1

    26/07/2012 11:13


    seb
    Rang : Expert
    Salut,
    Je souhaite implémenter une CSS différente pour safari et firefox sous Mac OS. (sous RBS Change 3.5.5)
    J'avais lu il y a quelques temps que nous pouvions insérer plusieurs css différents en fonction du navigateur. Mais quid de l'os ?
  • 63857.2 en réponse à 63857.1 écrit par seb

    27/07/2012 11:44


    seb
    Rang : Expert
    Bon, j'ai finalement retrouvé la page du wiki qui parlait brièvement de cela (http://wiki.rbschange.fr/ref:themes#styles_css_du_theme)
    Toutefois, je cherche à modifier mes css pour safari mac (et firefox mac).

    J'ai donc rajouté @import url(/themes/mpc/style/messtyles.khtml.3.css); dans mon css principal puis rajouté dans messtyles.khtml.3.css les différents éléments spécifiques à Safari Mac.

    Or, les modifs ne sont pas prises en compte.
    Une idée ? faut il réimporter le thème ?
    Généralement une commande clear-datacache et clear-webapp-cache suffisent à recharger mes styles.
  • 63857.3 en réponse à 63857.2 écrit par seb

    27/07/2012 16:32


    Jean-Michel
    Titre : Community Manager
    Rang : Expert
    Hello,

    Pour ce qui est de fournir une css en fonction de l'OS ce n'est pas géré et pour le faire il n'y a pas de trucs et astuce qui permettrait de le faire simplement.

    En ce qui concerne le problème d'import, la CSS n'est utilisée que lors d'un passage du navigateur cible. Donc si la CSS ne comporte aucune erreur et que le fichier porte le bon nom il n'y aura pas de problème. La manière la plus simpleest de vérifier la présence de ton code CSS en ouvrant le fichier CSS de la page une fois qu'elle est chargée.

    Pour une meilleure réponse, pensez à indiquer la version sur laquelle vous rencontrez des difficultés, ainsi que son type (CMS ou eCommerce core).
    Pour tout problème d'installation indiquez le nom de l'hébergeur et s'il s'agit d'un serveur mutualisé ou dédié.
  • 63857.4 en réponse à 63857.3 écrit par Jean-Michel

    27/07/2012 16:51


    seb
    Rang : Expert
    Hello Jean Mimi
    Merci de ton retour.
    Malheureusement, la solution que tu me propose (tester la css sur le navigateur en question) ne fonctionne pas pour le moment (je ne pense sincèrement pas avoir fait d'erreur dans mes CSS); est un souci de choix du nommage de ma CSS ?
    Concernant le fichier browscap.ini, je l'ai consulté et ai remarqué que le navigateur Safari étaient lié à khtml...
    Du coup j'ai un doute sur comment nommer ma CSS pour que Safari le prenne en compte (moncss.khtml.5.css ? pour safari 5 ou alors y a t il une version "khtml" ? ... là cela dépasse mes compétences)

    De même du coup, si je ne peux pas agir en utilisant cette fonction de change sur la détection des navigateurs, où dois je modifier les fichiers pour rajouter un script javascript de détection de version de navigateur et d'os pour sélectionner ma CSS ?

    Édité par seb 27/07/2012 16:52

  • 63857.5

    27/07/2012 20:10


    Aurélien Ferreira
    Rang : Membre
    seb a dit :
    Mais quid de l'os


    Comme l'a dit Jean-Michel en standard pas possibilité de charger une feuille de styles en fonction de l'OS. Mais si sa te tiens vraiment à cœur, tu peux contourner en faisant un petit script JS (ça reste une bidouille...), qui viendrait rajouter une classe (mac-css par exemple) à tes éléments.

    Exemple :

    <script type="text/javascript">
    jQuery(document).ready(function(){
    	var elements = jQuery(document).find(".detect-os");
    	var platform = navigator.platform.toLowerCase();
    
    	if(elements.length && platform.match(/mac/))
    	{
    		elements.addClass("mac-css");
    	}
    	
    	elements.removeClass("detect-os");
    });
    </script>


    Dans ce code, je vérifie que l'internaute dispose d'un Mac, et je rajoute une classe "mac-css" aux éléments de ma page ayant une classe "detect-os".

    A+
  • 63857.6 en réponse à 63857.5 écrit par Aurélien Ferreira

    22/08/2012 15:59


    seb
    Rang : Expert
    Merci Aurélien pour l'astuce.
    J'ai repris le script et légèrement modifié. Mais cette "rustine" me va bien pour le moment !
 
Merci de prendre connaissance et de respecter les règles des forums.
 
1391 membres
Aucun membre connecté