2009-05-29 6 views
2

Dans ce cas, Internet Explorer ne semble pas donner la bonne marge. On dirait qu'il mesure la marge du haut de la boîte et ignore le rembourrage. Pourquoi est-ce? Y a-t-il une bonne solution de contournement? Voici un exemple:Problème de marge Internet Explorer dans div avec remplissage

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <title></title> 

     <style type="text/css"> 
      .messagebox 
      { 
       border: solid 2px black; 
       background: blue; 
       color: white; 
       padding: 10px; /* Problem only when padding set */ 
      } 

      h1, h2, h3, h4 
      { 
       margin-top: 12px; 
      } 

     </style> 
    </head> 
    <body> 
     <div class="messagebox" style="width: 300px"> 
      <h4 style="text-align: center">In IE, this text is 10px higher than in FF.</h4> 
     </div> 
    </body> 
    </html> 

Je travaille dans IE7 et FF3. Merci.

Répondre

2

Bienvenue sur le IE box model bug

+0

La solution rapide à ce problème consiste à modifier votre doctype au format HTML 4.01 strict. –

+1

Merci pour le lien. En ce qui concerne la balise doctype, je l'ai changé en HTML 4.01 strict mais cela ne semble pas faire de différence:

0

Vous pouvez essayer

body{ 
zoom:1; 
} 

Je ne sais pas si cela va aider, mais il pourrait être une solution rapide si elle le fait!

+0

Je l'ai essayé - pas de chance. –

0

Je n'ai pas de réponse précise mais je l'ai eu du mal avec les différences entre IE et FF en ce qui concerne les marges et le rembourrage.

Vous devrez peut-être mettre explicitement la balise de type doc. Mode particulièrement strict. Cela devrait les forcer dans le même modèle de mise en page. À partir de là, vous avez affaire à un art plutôt qu'à une science.

Bonne chance.

Questions connexes