Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1342 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

   overflow auto et IE6 : débordement de div

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

overflow auto et IE6 : débordement de div

n°1763329
dede2a
Posté le 22-07-2008 à 17:50:01  profilanswer
 

Bonjour,
 
 je fais un site dont l'architecture est la suivante :
 - un cadre en haut avec une hauteur fixe et une largeur de 100%
 - un cadre à gauche (sur lequel est positionné un menu en flash) avec une hauteur de 100% et une largeur fixe
 - un cadre central , avec un scroll "auto",(qui sera alimenté à partir du menu flash et d'un code ajax) de largeur égale à 100% moins la largeur du cadre gauche, et une hauteur égale à 100% moins la hauteur du cadre en haut
 
 La contrainte est que le site doit être compatible quelque soit la résolution et pour firefox, IE6 et IE7.
 Or tout fonctionne sous firefox et IE7 mais il y a un décalage sous IE6.  
 En fait, lorsque la page chargée dans le cadre central fait apparaître un scroll dans firefox et IE7, IE6 ne le gère pas de la même façon, il utilise le scroll du navigateur et donc la page "déborde" du cadre.
 
 Voici le code HTML :

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title>-TITRE-</title>
  5. <link rel="shortcut icon" href="favicon.ico" />
  6. <link href="style_abso.css" rel="stylesheet" type="text/css" />
  7. <script type="text/javascript" language="javascript">AC_FL_RunContent = 0;</script>
  8. <script src="AC_RunActiveContent.js" type="text/javascript" language="javascript"></script>
  9. <script src="code_ajax.js" type="text/javascript" language="javascript"></script>
  10. </head>
  11. <body>
  12. <!-- début cadre logo -->
  13. <div id="cadre_logo"><img src="images/logo.gif" alt="" /></div>
  14. <!-- fin cadre logo -->
  15. <!-- début cadre haut -->
  16. <div id="cadre_haut"><img class="img_haut" src="images/barre_bleue.gif" alt="" /></div>
  17. <!-- fin cadre haut -->
  18. <!-- début cadre gauche -->
  19. <div id="cadre_gauche"></div>
  20. <!-- fin cadre gauche -->
  21. <!-- début menu gauche -->
  22. <div id="menu_flash"><script src="menu.js" type="text/javascript" language="javascript"></script></div>
  23. <!-- fin menu gauche -->
  24. <!-- début cadre centre rempli à partir du menu flash et du code ajax-->
  25. <div id="cadre_centre"></div>
  26. <!-- fin cadre centre -->
  27. </body>
  28. </html>


 
et le code CSS :
 

Code :
  1. html, body {
  2.         height:100%;
  3.         width:100%;
  4.         min-width:600px;
  5.         background-color:#000000;
  6.         font-family:Arial, Helvetica, sans-serif;
  7.         color:#FFFFFF;
  8.         font-size:14px;
  9.         padding:0px;
  10.         margin:0px;
  11. }
  12. #pageindex {
  13.         position:absolute;
  14.         left:50%;
  15.         top:50%;
  16.         width:650px;
  17.         height:450px;
  18.         margin-top:-225px; /* moitié de la hauteur */
  19.         margin-left:-325px; /* moitié de la largeur */
  20. }
  21. .img_index {
  22.         border:none;
  23. }
  24. #cadre_gauche {
  25.         position:absolute;
  26.         background-color:#333333;
  27.         left:0px;
  28.         top:0px;
  29.         width:120px;
  30.         height:100%;
  31.         z-index:1;
  32. }
  33. #cadre_logo {
  34.         position:absolute;
  35.         left:0px;
  36.         top:0px;
  37.         width:335px;
  38.         height:120px;
  39.         z-index:3;
  40. }
  41. #cadre_haut {
  42.         position:absolute;
  43.         left:0px;
  44.         top:0px;
  45.         width:100%;
  46.         height:50px;
  47.         z-index:2;
  48. }
  49. .img_haut {
  50.         height:120px;
  51.         width:100%;
  52. }
  53. #menu_flash {
  54.         position:absolute;
  55.         left:3px;
  56.         top:130px;
  57.         width:114px;
  58.         height:265px;
  59.         z-index:3;
  60. }
  61. #cadre_centre {
  62.         position:absolute;
  63.         background-color:#000000;
  64.         margin-left:130px;
  65.         margin-top:130px;
  66.         margin-right:10px;
  67.         margin-bottom:10px;
  68.         z-index:4;
  69.         overflow:auto;
  70. }
  71. .style_titre {
  72.         color:#333333;
  73.         font-size:16px;
  74.         font-weight:bold;
  75. }


 
J'ai effectué pas mal de recherche mais je n'arrive pas à résoudre ce problème.
 D'ailleurs, ce que je souhaite ressemble à un modèle fourni sur alsacreations http://css.alsacreations.com/modeles/modele12.htm , mais avec une hauteur qui varie en fonction de la résolution.
 
 J'ai également essayé de générer dynamiquement en fonction de la taille de la fenêtre active, un CSS différent pour IE6. Cela fonctionne, mais uniquement si l'utilisateur ne redimensionne pas la fenêtre. Auquel cas, le cadre central ne s'adapte pas.
 
 Y a t-il une solution?
 
 Merci.

mood
Publicité
Posté le 22-07-2008 à 17:50:01  profilanswer
 

n°1763480
gebruik
Posté le 22-07-2008 à 23:22:17  profilanswer
 

Si tu mets une hauteur à 100% à body (au passage pourquoi une largeur à 100% ?), IE6 ne va pas comprendre et va continuer à augmenter la hauteur de body tant que tu restes sur la page (ça se voit à la barre de scroll qui diminue).
Pourquoi tout positionner en absolu ?

n°1763713
dede2a
Posté le 23-07-2008 à 14:28:38  profilanswer
 

Bonjour gebruik,
 
en fait si j'enlève height:100%; dans le body, le cadre à gauche (celui du menu) disparaît sous IE6 ! J'avais trouvé cette solution sur le net...
J'ai tout positionné en absolu parce que sinon les cadres étaient positionnés n'importe comment  :??:  
Je débute en CSS, alors je m'y prend peut-être mal...
Comment penses-tu que je devrais positionner mes cadres?
 
Merci.

n°1763951
mIRROR
Chevreuillobolchévik
Posté le 24-07-2008 à 04:45:07  profilanswer
 

dede2a a écrit :

Bonjour gebruik,
 
en fait si j'enlève height:100%; dans le body, le cadre à gauche (celui du menu) disparaît sous IE6 ! J'avais trouvé cette solution sur le net...


 
pour eviter le probleme que gebruik souligne remplace
height:100%;
par  
zoom:1;
 
sinon le positionnement en absolute c est vraiment degueu essaie plutot des float


---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell
n°1764419
dede2a
Posté le 24-07-2008 à 17:17:57  profilanswer
 

Merci mIRROR pour ton aide, mais ça ne fonctionne pas chez moi.
 
Mais ce n'est pas grave, "j'ai" trouvé une autre solution (merci C_S_S  ;) ). Si ça interresse quelqu'un qu'il me fasse signe.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

   overflow auto et IE6 : débordement de div

 

Sujets relatifs
problème float et lien hypertexte IE6[Résolu] SWF inactif sous IE6
récupérer un ID auto-incrémenté après son insert[VBA/Excel]Filtre Auto et copie des lignes résultantes
Hibernate : Auto Increment sur une propriété[reglé] decalage ie6 en css
[MySQL] Alimentation auto d'une base de donnéesUpdate sur un champs AUTO-INCREMENT
[Zend Eclipse] : pas d'auto complétiondebordement sur un DIV
Plus de sujets relatifs à : overflow auto et IE6 : débordement de div


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR