Je crée un site avec DIV
s. Tout va bien sauf quand je crée un DIV. Je les crée comme ceci (exemple):
newdiv {
width: 200px;
height: 60px;
padding-left: 20px;
text-align: left;
}
Lorsque j'ajoute la padding-left
propriété, la largeur des DIV
modifications passe à 220 pixels et je souhaite qu'elle reste à 200 pixels.
Supposons que j'en crée un autre DIV
nommé anotherdiv
exactement le même que newdiv
, et que je le mette à l'intérieur de newdiv
mais newdiv
n'a pas de remplissage et l' anotherdiv
a padding-left: 20px
. Je reçois la même chose, newdiv
la largeur de 220px.
Comment puis-je résoudre ce problème?
Réponses:
Ajouter une propriété:
Remarque: cela ne fonctionnera pas dans Internet Explorer sous la version 8.
la source
Mettez un div dans votre newdiv avec
width: auto
etmargin-left: 20px
Retirez le rembourrage de newdiv.
La page du modèle W3 Box contient de bonnes informations.
la source
Essaye ça
la source
Si vous souhaitez mettre en retrait du texte dans un div sans modifier la taille du div, utilisez
text-indent
plutôt le CSSpadding-left
.la source
ajoutez simplement
box-sizing: border-box;
la source
Oui, c'est exactement selon les normes. Voilà comment cela est censé fonctionner.
Non, newdiv restera large de 200 pixels.
la source
changez simplement votre largeur de div à 160px si vous avez un rembourrage de 20px, cela ajoute 40px supplémentaire à la largeur de votre div, vous devez donc soustraire 40px de la largeur afin de garder votre div normal et non déformé avec une largeur supplémentaire et votre texte tout foiré.
la source