IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Un hack CSS pour Firefox inférieur à 3.5


Sujet :

CSS

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut Un hack CSS pour Firefox inférieur à 3.5
    Bonjour à tous,

    J'ai un site Internet dont une partie ne fonctionne pas si Firefox est inférieur à 3.5 (donc FF 3.0 par ex, le 2, etc).

    J'ai trouvé sur Internet des hack pour Firefox 2, Firefox 3... le problème de ce dernier est qu'il hack TOUS les Firefox 3, donc y compris le 3.5 où le code fonctionne

    Existe-t-il un hack CSS (voire via javascript...) pour Firefox inférieur à 3.5 ?

    Merci d'avance

  2. #2
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    Salut,

    la vrai question c'est pourquoi as tu besoin d'un hack ? Quel est le problème auquel tu es confronté ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Bonjour et merci pour ta réponse

    Le site concerné est celui-ci : http://raudin.u-bordeaux3.fr/
    Il y a un slide (fait avec Slidedeck pour Wordpress) en page d'accueil. Il utilise, entre autres, une propriété de rotation qui ne fonctionne pas sur Firefox 2 et Firefox < 3.5, ni sur IE6 par ailleurs.

    La seule façon "aisée" que je vois est de carrément masquer le slider sur ces versions, le temps nous étant compté pour ce site

    Pour faire court, je cherche un truc du genre (c'est pas du vrai code hein )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SI (Navigateur == Firefox && Version Firefox < 3.5) {
         <style type="text/css">
              #slide { display: none; }
         </style>
    }

  4. #4
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    Je vois que tu utilises jQuery.

    Tu peux donc récupérer facilement le nom du navigateur et la version (jquery.browser, il est déprécié mais toujours utilisé) et faire ceci par exemple:
    Code Tiré de la documentation jQuery : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var ua = $.browser;
      if ( ua.mozilla && ua.version.slice(0,3) == "1.9" ) {
        alert( "Do stuff for firefox 3" );
      }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Merci beaucoup pour ta réponse

    Ce site a cependant quelques difficultés avec les jQuery j'ai l'impression... Il me renvoie une erreur, étrange puisqu'en lien avec l'usage basique du code jQuery :

    Erreur*: $ is not a function
    Fichier Source*: http://raudin.u-bordeaux3.fr/
    Ligne*: 37


    Erreur*: $ is undefined
    Fichier Source*: http://raudin.u-bordeaux3.fr/
    Ligne*: 112


    Connais-tu ou sais-tu où trouver l'équivalent sans utilisation de jQuery ?

  6. #6
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    en javascript pur, tu dois utiliser l'objet navigator:
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    var version,string;
    var detect = navigator.userAgent.toLowerCase();
    function checkUA(str)
    {
    	position = detect.indexOf(str) + 1;
    	string = str;
    	return position;
    }
    window.onload = function(){
     
    	if(checkUA('firefox')){
    		alert('je suis sous firefox');
    		if (!version) {
    			version = detect.charAt(position + string.length);
    			alert('voici la version : ' + version);
    		}
    	}
    }

    le script est à adapter pour la version

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Merci encore pour ta réponse et ta patience

    Ce code est presque parfait... Le problème qu'il y a c'est qu'il identifie la version à son premier niveau : il me renvoie la même chose pour Firefox 3.0 et Firefox 3.5 par exemple (à savoir "je suis sur Firefox 3")... du coup je ne peux pas faire de différence entre les deux et traiter le problème

  8. #8
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 212
    Par défaut
    Citation Envoyé par Msieurduss Voir le message
    Merci beaucoup pour ta réponse

    Ce site a cependant quelques difficultés avec les jQuery j'ai l'impression... Il me renvoie une erreur, étrange puisqu'en lien avec l'usage basique du code jQuery :

    Erreur*: $ is not a function
    Fichier Source*: http://raudin.u-bordeaux3.fr/
    Ligne*: 37


    Erreur*: $ is undefined
    Fichier Source*: http://raudin.u-bordeaux3.fr/
    Ligne*: 112


    Connais-tu ou sais-tu où trouver l'équivalent sans utilisation de jQuery ?
    ces erreurs sont liées à l'abandon de la variable $ dans jQuery.noConflict() qui se trouve dans ton fichier http://raudin.u-bordeaux3.fr/wp-incl...y.js?ver=1.4.2
    - soit tu utilises une version standard
    - soit tu mets
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ = jQuery;
    $(document).ready(function() {...
    opte pour la première solution

    <edit>
    au fait tant qu'à utiliser jQuery pourquoi ne pas utiliser jQuery.ajax()
    </edit>

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Exact en effet, $ = jQuery; fonctionne très bien. Merci beaucoup pour ton aide !

    Pour jQuery.ajax, c'est vrai que je ne l'ai même pas utilisé pour une partie en ajax sur le site, faite à la mano... je maîtrise encore assez mal jQuery, surtout sur ce site là (un Wordpress) où les modules sont multiples et utilisent parfois plusieurs versions de jQuery... bref

    Cela ne règle pas le problème de la version de Firefox, qui est bien détectée, mais pas dans le détail : impossible d'indiquer la différence entre 3.0 et 3.5...

    (ce message aurait désormais + sa place dans le forum js peut-être )

  10. #10
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    tiens j'ai refait le script, il donne la version entière :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    var version,string;
    var detect = navigator.userAgent.toLowerCase();
    function checkUA(str)
    {
    	position = detect.indexOf(str) + 1;
    	string = str;
    	return position;
    }
    window.onload = function(){
     
    	if(checkUA('firefox')){
    		alert(detect);
    		if (!version) {
    			version = detect.substring(position + string.length, detect.length);
    			alert('voici la version : ' + version);
    		}
    	}
    }

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2006
    Messages : 216
    Par défaut
    Merci BEAUCOUP !!! Cela fonctionne nickel ! Je n'ai plus qu'à faire la condition et ça ira !

    Super !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Hack CSS pour Chrome seul ?
    Par Mister Paul dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 30/10/2012, 20h25
  2. Hacks CSS pour Safari 4
    Par Ikonic dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 04/06/2009, 15h33
  3. css pour ie et une autre pour firefox?
    Par line86 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 30/07/2008, 14h11
  4. Question CSS pour IE7 et Firefox
    Par Olivier Regnier dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 21/01/2008, 09h22
  5. Hack CSS IE<7 IE>=7 Opera Netscape et Firefox
    Par kimcharlene dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 03/04/2007, 21h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo