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

JavaScript Discussion :

Firefox et style - propriete border vide


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2002
    Messages
    15
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 15
    Par d�faut Firefox et style - propriete border vide
    Bonjour � tous,

    Je souhaite r�cup�rer la valeur d'une propri�t� CSS via Javascript.

    HTML :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    <div id="monDiv"></div>
    CSS :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    div#monDiv {
      border-width:1px;
    }
    Javascript :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var toto = document.getElementById("monDiv").style.borderWidth;
    Sous IE, pas de probl�me, je r�cup�re la valeur, par contre sous FireFox, pas de valeur, j'ai une cha�ne vide � la place et pour que cette donn�e soit correctement renseign�e, je dois utiliser l'attribut style de ma balise div.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    <div id="monDiv" style="border-width:1px;"></div>
    J'ai tent� une recherche sur le forum, mais je n'ai pas trouv� de r�ponse sur la fa�on de r�soudre ce probl�me.

    Merci de votre r�ponse.

  2. #2
    Membre Expert
    Avatar de gwyohm
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Octobre 2007
    Messages
    925
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 925
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.defaultView.getComputedStyle(document.getElementById("monDiv"), null).borderWidth

  3. #3
    Membre averti
    Inscrit en
    Juillet 2002
    Messages
    15
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 15
    Par d�faut
    Merci pour cette r�ponse, mais malheureusement cela ne change rien. voici le code complet de ma page :

    Code : 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
    20
    21
    22
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
        <title>Page type</title>
        <script type="text/javascript">
        function init() {
    		alert(document.defaultView.getComputedStyle(document.getElementById("monDiv"),null).borderWidth);
    	}
    	</script>
    	<style type="text/css">
    		div#monDiv {
    			border-width: 1px;
    			border-color: #000000;
    			border-style: solid; 
    		}
    	</style>
    </head>
    <body onload="init();">
      <div id="monDiv">bla bla</div>
    </body>
    </html>
    Ma version de Firefox : 3.5.5

  4. #4
    Membre averti
    Inscrit en
    Juillet 2002
    Messages
    15
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 15
    Par d�faut
    Le probl�me semble venir des propri�t�s CSS "border", car en faisant un test avec d'autres propri�t�s, je ne rencontre pas de probl�me.

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    F�vrier 2009
    Messages
    354
    D�tails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : F�vrier 2009
    Messages : 354
    Par d�faut
    essaye ca

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    var getStyle = function(/*DOMObject*/element, /*string*/rule){//peux etre definit en globale car très utilise, aucune dépendance...
        var camelRule=rule.replace(/\-(\w)/g, function (strMatch, p1){return p1.toUpperCase();}),//supprime les tiré et met en majuscule la lettre suivante
            value = element.style[camelRule];
        if (!value){
            if(document.defaultView && document.defaultView.getComputedStyle){
                value = document.defaultView.getComputedStyle(element, "").getPropertyValue(/*fait l inverse de camelRule*/rule.replace(/[A-Z]/g, function(match){return '-'+match.charAt(0).toLowerCase();}));
            }else{//specifique ie
                value = element.currentStyle[camelRule] ;
            }
        }
        return value == 'auto' ? undefined : value;
    };
    Cependant les retours des paddings , margins, et borders diff�re en fonction du navigateur.
    Pour certain il ne retourneront pas un simple padding , mais il faudra �tre plus pr�cis en indiquant la direction (padding-left).

  6. #6
    Membre averti
    Inscrit en
    Juillet 2002
    Messages
    15
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 15
    Par d�faut
    J'ai compris mon probl�me :

    En fait, sous firefox, il faut effectivement acc�der � chaque c�t� ("right", "left", "top", "bottom") du bloc :

    pour la bordure je dois donc par exemple utiliser :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    document.defaultView.getComputedStyle(
                    document.getElementById("monDiv"), null).borderRightWidth;
    Pour r�cup�rer l'�paisseur de la bordure droite et ainsi de suite avec les autres c�t�s du bloc.

    Merci pour votre aide !

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Firefox 8 r�initialise certains ic�nes vides
    Par cylere dans le forum Firefox
    R�ponses: 3
    Dernier message: 27/11/2011, 14h01
  2. [css] border-style
    Par youbyoub dans le forum Mise en page CSS
    R�ponses: 9
    Dernier message: 09/01/2006, 21h21
  3. [HTML][CSS] Attribut BorderColor et style Border-Color
    Par David.V dans le forum Mise en page CSS
    R�ponses: 3
    Dernier message: 29/07/2005, 09h54
  4. Pb style display avec Firefox mal appliqu�
    Par frochard dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 13/07/2005, 23h48
  5. [] Datagrid vide après modification des propriétés
    Par SpaceFrog dans le forum VB 6 et ant�rieur
    R�ponses: 9
    Dernier message: 20/09/2002, 16h37

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