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

HTML Discussion :

internet explorer / mozilla


Sujet :

HTML

  1. #1
    Provisoirement toléré
    Inscrit en
    Octobre 2002
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 214
    Points : 33
    Points
    33
    Par défaut internet explorer / mozilla
    Bonjour , pourquoi ce code fonctionne parfaitement sous mozilla firefox et ne fonctionne pas sous IE ( le menu est décalé à droite en plein dans la 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
     
    #menu {
    height: 510px;
    border: 1px solid black;
    border-top-color: #fff;
    width: 150px;
    position: absolute;
    }
     
    #page {
    margin-left: 149px;
    height: 510px;
    width: 705px;
    background: #fff;
    border: 1px solid black;
    border-top-color: #fff;
    }
    merci

    PS : ces 2 div sont contenus dans un div faisant 855px de large pour 510 de haut .

  2. #2
    Membre actif Avatar de glloq8
    Inscrit en
    Novembre 2002
    Messages
    298
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Novembre 2002
    Messages : 298
    Points : 255
    Points
    255
    Par défaut
    ils sont en float:left ??

  3. #3
    Provisoirement toléré
    Inscrit en
    Octobre 2002
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 214
    Points : 33
    Points
    33
    Par défaut
    non , le div qui contient ces 2 div est celui ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #container {
    height: 510px;
    width: 855px;
    border: none;
    margin-left: auto;
    margin-right: auto;
    }
    donc avec mozilla le menu se met parfaitement à gauche et le div page se met juste à coté , l'affichage est nikel , mais sous IE , le div menu empiète carrément sur le div page...
    Aucun n'est en float left , le menu a une position absolue et une largeur de 150px , il se met naturellement à gauche , et pour le div page j'ai mis une marge de 150px pour qu'il se mette juste à coté . En fait au début j'avais mis un float right dans le div page et çà marchait avec IE et mozilla mais j'avais une petite imperfection de 1px ou 2 qui m'énervait grandement , les 2 div faisaient 854px de large au lieu de 855 et çà faisait con avec le reste de la page...

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    un classique à cause du boxtype ...

    http://www.positioniseverything.net/explorer/expandingboxbug.html

  5. #5
    Provisoirement toléré
    Inscrit en
    Octobre 2002
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 214
    Points : 33
    Points
    33
    Par défaut
    désolé j'ai pas le niveau en anglais necessaire pour comprendre l'article et corriger mon soucis

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Salut!

    Citation Envoyé par Bibouda
    Aucun n'est en float left , le menu a une position absolue et une largeur de 150px , il se met naturellement à gauche
    Naturellement à gauche? Pour qu'il se mette à gauche, il faut lui préciser qu'il doit se mettre à gauche, sinon il ne sait pas où se placer et tu es à la merci des décisions des navigateurs. En plus tu n'es pas en position absolue. Pour cela tu aurais du préciser les coordonnées du coin gauche de ton menu après "position:absolute;":
    top:nbr_de_pixels px;
    left:nbr_de_pixels px;

    Je te conseille plutôt d'utiliser des positions relatives pour les blocs "menu" et "page" grâce à "float:left;". Dans ce cas la première portion de texte que tu mettras dans la page html, à savoir <div class="menu">texte</div> ou <div class="page">texte</div> s'affichera sur la gauche du navigateur. La seconde portion du texte s'affichera dans la gauche de l'espace libre (c'est à dire à droite de la première portion du texte écrite).

    Cela donne:
    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
     
    #container {
    height: 510px;
    width: 870px;
    border: none;
    margin-left: auto;
    margin-right: auto;
    } 
    #menu {
    float:left;
    height: 510px;
    border: 1px solid black;
    border-top-color: #ffffff;
    width: 150px;
    }
    #page {
    float:left;
    padding-left: 10px;
    height: 510px;
    width: 705px;
    background-color: #ffffff;
    border: 1px solid black;
    border-top-color: #ffffff;
    border-left-color: #ffffff;
    }
    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
     
    <html>
    <body>
     
    <div class="container">
    <div class="menu">
    menu
    </div>
     
     
    <div class="page">
    contenu de la page
    </div>
     
    </div>
    </body>
    </html>
    J'ai testé et cela fonctionne sous firefox et IE.

    Tu vois que la marge de "page" n'est plus indispensable avec un positionnement relatif avec des floats.
    Padding représente l'espace entre le contenu du bloc et sa bordure.
    A noter que la taille (width) du conteneur doit être strictement supérieure à la somme des tailles des blocs qui la composent (prévoir 5 à 10 px d'écart).
    "border-left-color: #ffffff;" sert à ne pas doubler la taille de l'épaisseur de la bordure centrale.

  7. #7
    Provisoirement toléré
    Inscrit en
    Octobre 2002
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 214
    Points : 33
    Points
    33
    Par défaut
    j'ai testé ton code et il ne marche pas , et je persiste et signe , mon div menu est bien en position absolue , ta proposition de mettre le menu en float left + la apge en float left ne marche pas , le div page se met en dessous du div menu et je vois pas l'intérêt de mettre un padding , le menu et la page font précisément en pixel la largeur de leur div conteneur , si je mets un padding de 10 çà dépasse...

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 128
    Points : 122
    Points
    122
    Par défaut
    Il y a une erreur sur le code que je t'ai filé car les # doivent être associés à des id. Pour ma part j'ai testé le code avec des class et des ".{...}" et cela marchait parfaitement.

    Citation Envoyé par Bibouda
    le div page se met en dessous du div menu et je vois pas l'intérêt de mettre un padding , le menu et la page font précisément en pixel la largeur de leur div conteneur.
    J'ai rajouté un padding parce que le texte de la page était collé à la bordure et que cela était inesthétique. Libre à toi de la supprimer. La page se met en dessous du menu si la taille du conteneur est trop faible. Pour na pas avoir ce problème donne une largeur suffisante à ton conteneur. De plus je t'ai déjà dit que la taille "menu + page" doit être strictement supérieure à celle du conteneur. Il semblerait qu'il faille rajouter la taille du padding, à celles des width.

Discussions similaires

  1. menu déroulant css Internet Explorer Mozilla Firefox
    Par nokia1600 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 13/04/2010, 15h19
  2. Internet Explorer / Mozilla
    Par mosquitout dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 22/11/2007, 17h17
  3. favoris internet (explorer-mozilla)
    Par insa59 dans le forum Firefox
    Réponses: 2
    Dernier message: 14/05/2007, 09h15
  4. [CSS] différence entre mozilla et internet explorer
    Par ph_anrys dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 16/11/2005, 10h53
  5. Css - internet explorer - mozilla
    Par yaka2 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 10/11/2005, 17h09

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