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 :

rendu différent entre IE et FF ? [CSS 2]


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4 341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 4 341
    Par défaut rendu différent entre IE et FF ?
    Bonjour,

    Je débute en html, css pour faire un petit site perso et sans prétention.

    JE regarde à droite et à gauche et essai de voir comment faire.

    Je voulais déjà voir comment séparer ma page en plusieurs morceaux avec les "div".

    J'ai crée ceci
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    /* CSS Document */
    div
    {
      text-align:center;
    }
    div#bandeau 
    {
      width:*;
      height:50px;
      background-color:#00CCFF;  
    }
    div#contenu
    {
      width:auto;
      height:400px;
      background-color:#FFCC00;
    }
    div#piedpage
    {
      clear:both;
      width:*;
      height:50px;
      background-color:#33FF99;
    }
    div#menu
    {
      float:left;
      width:100px;
      height:400px;
      background-color:#FF6699;
    }
    et une page html
    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
     
      <link rel="stylesheet" type="text/css" href="./style/style-div.css">
      </head>
      <body>
        <div id="bandeau">
          <h1>Bienvenue sur le site de Louis Griffont</h1>
        </div>
        <div id="menu">
           Menu à la carte
        </div>
        <div id="contenu">
          <p>Le bla bla de ma page...</p>
        </div>
        <div id="piedpage">
          Pied de page
        </div>
      </body>
    </html>
    J'utilise normalement FF ! A la vue du résultat, j'ai regardé si j'obtenais la même chose sous IE.
    Les 2 images ci-dessous donnent les résultats bien différents selon le navigateur !

    Quelqu'un pourrait m'expliquer le pourquoi de la différence et ce que j'ai mal fait ?
    Images attachées Images attachées   

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    J'imagine que le résultat attendu est celui de IE.

    Le problème n'est pas évident à cerner pour un débutant, mais il est facilement repérable avec Firebug. Il provient d'un problème de fusion des marges (pour plus d'infos, faire une recherche). En effet, la marge haute de l'élément p de ton élément #contenu est reporté à cet élément, ce qui te donne un écart sur Firefox.
    Tu peux corriger ce problème en rajoutant par exemple un overflow:hidden sur ton div #contenu.

    Petite remarque au passage, width:* n'existe pas, si tu veux qu'un élément prenne toute la largeur disponible, c'est width:100%. Et dans ton cas il est inutile de préciser la largeur, puisque width:100% est la valeur par défaut des éléments block (ici les div).

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Février 2003
    Messages
    4 341
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 4 341
    Par défaut
    Merci de ces précisions.

    Un autre point, le texte "Menu à la carte" m'affiche un caractère étrange à la place du "à". J'imagine que c'est l'accent qui ne lui plait pas, mais comment faire pour qu'il m'affiche correctement mes accents ?

    Autre question. Si je met le "overflow:hidden" dans la partie "div" de mon CSS, est-ce que ça règlera tout ces problèmes d'affichage dans tout mes div définis après ?

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Si tu as ce caractère "�" qui apparait à la place du à, c'est un problème d'encodage. Tu dois avoir mis un charset UTF-8 sans enregistrer ton fichier en tant que tel.
    Par exemple, sur Notepad++ : Format > Encoder en UTF-8 (sans BOM).

    Pour l'autre question, ça règlera ce problème en particulier et d'autres que tu pourrais rencontrer, sans doute, mais mettre overflow:hidden sur l'ensemble des div à mon avis ça te perturbera sans doute pas mal dans de nombreux autres cas vu que ce n'est pas le comportement normal attendu, donc à mon avis il est plus judicieux de régler ces problèmes au cas par cas.

    @sebhm : Un padding sur le #contenu fait cet effet là aussi. En faisant une recherche sur Google sur la fusion des marges, on a pas mal d'articles recensant ce problème et les différents moyens de le contourner.

    Sur Firebug, dans l'onglet HTML, si tu fais pointer ta souris sur le div #contenu tu ne vois à priori rien, mais si tu fais pointer ta souris sur le premier p de ce div, tu verras que c'est cette marge (affichée en jaune) qui créé cet espace.

  5. #5
    Membre émérite Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Par défaut
    OK merci.
    j'apprends des trucs !

  6. #6
    Membre émérite Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Par défaut
    Bonjour,

    j'ai du mal moi aussi avec ce genre de spécificité !
    un truc rigolo (ouais, rigolo n'est peut etre pas le terme adéquat ),
    si tu ajoutes juste une bordure au bloc #contenu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    border :1px solid black;
    le probleme disparait car la fusion des marges ne se fait plus.

    @bisûnûrs : comment vois-tu facilement le probleme avec Firebug ?
    (j'ai un peu de mal à me servir correctement de cet outil)


    pour ton dernier post :
    je te conseillerais d'abord ce tres bon article pour gérer correctement le codepage.
    Sinon, les caracteres spéciaux HTML sont là pour ca.
    Enfin, pour la propriété overflow, ca peut régler tes problemes de fusion de marge, mais l'overflow Hidden a un rôle précis également et il ne faut pas que ca perturbe ta page

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/02/2014, 16h52
  2. Rendu différent entre IE et FF
    Par PIEPLU dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 05/06/2012, 20h00
  3. Rendu différent entre IE8 et Firefox
    Par Tibzz dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 18/08/2011, 09h34
  4. Rendu différent entre Birt et Runtime
    Par scariou29 dans le forum BIRT
    Réponses: 3
    Dernier message: 03/07/2008, 12h55
  5. Réponses: 2
    Dernier message: 17/05/2002, 21h37

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