2010-11-16 7 views
5

J'ai une question concernant CSS dans Firefox.Firefox ajoute une largeur supplémentaire avec rembourrage

Si je définis une largeur d'un div floated disons 200px - la définition d'un remplissage-gauche à 10px dans Firefox ajoutera 10px à la largeur. Dans IE ce n'est pas le cas.

Que pouvez-vous faire pour empêcher Firefox d'ajouter la largeur supplémentaire à la div?

+4

toujours, mais toujours concevoir vos mises en page dans un navigateur conforme aux standards comme FF et Chrome. Puis revenez en arrière et déterminez les endroits où l'Internet perturbe les choses. – Stephen

+1

Ce que vous avez là est IE en mode quirks. FF présente correctement le CSS en utilisant le "modèle de boîte". En savoir plus sur le modèle de boîte ici: http://www.w3schools.com/css/css_boxmodel.asp Vous pouvez poser une autre question avec votre code, nous pouvons vous aider à l'obtenir. –

Répondre

8

Ce n'est pas Firefox qui est le problème, c'est IE.

IE ne fonctionne pas aux normes, il y a quelques trucs à cela, mais ils sont tous une douleur dans le cul: http://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug

La façon la plus simple est d'inclure une balise doctype stricte valide:

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

Ensuite, il suffit de réécrire le code CSS pour la boîte conforme aux normes modèle

More doctypes here

+0

Correct mais les nouvelles pages Web doivent toujours utiliser le doctype strict. – Rob

+0

C'est ce que j'ai dit! : D –

+0

Vous montrez le doctype de transition. – Rob

4

par défaut, box-sizing est défini sur content-box dans mozilla et border-box dans IE.

en utilisant:

-moz-box-sizing:border-box; 
-webkit-box-sizing:border-box; 
box-sizing:border-box; 

dans votre style de vous pouvez définir le dimensionnement de la boîte de mozilla, safari et opéra à boîte de frontière aussi.

pour plus d'informations, consultez: http://www.css3.info/preview/box-sizing/

Questions connexes