J'ai rencontré des problèmes pour définir la largeur d'un élément textarea et utiliser le remplissage via CSS. La valeur de remplissage semble changer la largeur de la zone de texte, ce que je préfère ne pas faire.Comment puis-je ajouter un remplissage à une zone de texte sans augmenter la largeur?
Ceci est mon code HTML:
<div id="body">
<textarea id="editor"></textarea>
</div>
Et mon code CSS:
#body {
height:100%;
width:100%;
display:block;
}
#editor {
height:100%;
width:100%;
display:block;
padding-left:350px;
padding-right:350px;
}
Cependant, les valeurs de remplissage ne semble pas fonctionner comme on pouvait s'y attendre. La largeur de la zone de texte est augmentée de 350 pixels dans les deux directions, plutôt que de définir l'espace entre les bordures de l'élément et son contenu. J'ai juste considéré le centrage de la zone de texte en définissant les marges à "0px auto", mais j'aimerais que l'utilisateur puisse toujours faire défiler la zone de texte si la souris survole l'une des marges vides. Pour la même raison, je ne peux pas ajouter une autre div comme wrapper, car l'utilisateur ne serait pas capable de faire défiler les zones vides mais uniquement le long de la zone de texte sans marge.
Quelqu'un peut-il aider?
Intéressant . Difficile à croire que cela est devenu possible avec CSS3. Quoi qu'il en soit, cela fonctionne. Merci! –
un bon. voici le code pour FF/Safari: -moz-box-sizing: border-box;/* Firefox */ -webkit-box-dimensionnement: border-box;/* Safari */ –
Remarque: la taille de la boîte doit être spécifiée sur le parent et non sur la zone de texte. – mikeborgh