Textarea redimensionner
J'ai besoin d'utiliser un textarea pour afficher du texte. Le problème est que si je place 4-5 lignes de texte, une barre de défilement apparaît. Comment puis-je utiliser CSS/HTML, de sorte que le textarea sera aussi importante que son contenu (pas de barre de défilement).
- le textarea n'a pas besoin de changer la taille de dynamicaly, je l'utilise seulement pour afficher un texte (je pourrais aussi utiliser un handicapé textarea)
- Je veux le textarea pour étirer seulement verticaly.
Si vous voulez savoir:
J'utilise le composant textarea pour afficher du texte à partir d'une base de données, de sorte que lorsque le textarea (avec le texte) est créée, elle doit démontrer à l'ensemble du texte, à la fois avec pas de barres de défilement.
Le point de l'ensemble d'un textarea est pour permettre à l'utilisateur de saisir du texte. Si vous souhaitez afficher du texte, l'utilisation d'un élément approprié de la sémantique (peut-être la div, p ou avant).
OriginalL'auteur Cristy | 2011-04-02
Vous devez vous connecter pour publier un commentaire.
Im peur que vous pourrez avoir recours à javascript pour régler la hauteur de votre textarea. Vous pouvez utiliser le
scrollHeight
propriété pour déterminer la hauteur totale.Alternativement, vous pouvez simplement utiliser un
div
et le style de l'div
à ressembler à un textarea. Lediv
augmentera automatiquement et comme un handicapé textarea de toute façon, vous n'avez pas vraiment besoin d'être un textarea.OriginalL'auteur jeroen
http://jsfiddle.net/TDAcr/
OriginalL'auteur Amin Rahimi
Bon, je viens de trouver ceci et cela fonctionne très bien:
Maintenant, je ne présumez pas que vous savez Javascript (mais vous pouvez être).
Il suffit d'exécuter
Quelque chose comme ça devrait fonctionner. Je ne suis pas le meilleur avec du Javascript (même pas proche, j'ai juste commencé à l'aide de l'autre jour)
Qui semble faire quelque chose de similaire à ce que vous voulez. Le premier exemple de code est pour un textarea qui change dynamiquement en fonction sur ce qu'il est (lors de la frappe). Il va prendre une couple de changements pour obtenir comme vous le souhaitez.
Je sais que C++, j'ai pu également créer cette macro mais... Où est le plaisir? xD
Beaucoup, beaucoup. Il est préférable de créer un nettoyage écrit site au lieu de travailler avec un piraté chose. Surtout lorsqu'ils traitent avec les clients.
C'est mon site personnel. J'ai toujours dis: "ok, le mal est fait; je vais faire le prochain site web deux fois mieux!"
Oh bien. L'apprentissage est meilleur! L'essai et l'erreur est la meilleure!
OriginalL'auteur FreeSnow
Vous pouvez utiliser le CSS hauteur: et la largeur: les attributs, les e. g. quelque chose comme
<textarea style="width:400px;height:300px">...</textarea>
, il suffit d'utiliser les tailles que vous voulez.En outre, si vous souhaitez supprimer la barre de défilement, utilisez
overflow:hidden
.OriginalL'auteur addaleax
vous pouvez utiliser des div comme textarea. Il est possible comme ceci:
OriginalL'auteur Guwanch
Trouver la hauteur de la police, vous aurez très probablement de l'affichage. Je ne suis pas sûr à propos de CSS/HTML, mais vous pouvez utiliser Javascript/PHP/ASP.net pour utiliser la carte pour déterminer comment grand que le texte sera basé sur le nombre de caractères. Si vous le faites dans une police à chasse fixe, ce sera encore plus facile. Pourquoi utiliser une zone de texte lorsque vous pouvez simplement utiliser un label qui va faire la même chose par lui-même?
Ainsi, chaque contrôle est fait pour faire des choses différentes. Ces zones de texte sont mis à dessein afin de ne pas redimensionner. Quelle est la raison que votre requis pour utiliser le textarea?
Parce que j'ai créé un site il y a un an, qui vous permettra d'ajouter un peu de Publicité (contenant du texte). De retour alors j'ai dit à l'aide de ces zones de texte, et maintenant je veux changer un peu la façon dont ils regardent. Je ne veux pas aller à travers toutes les annonces déjà postées et remplacer le "textarea" avec un div.
Oh, ok. Je n'ai jamais vraiment fait de html/css du site en avant. Tous les trucs de ma est asp.net et il est tout seul les changements de page. Oh bien 🙂 Essayez d'y d'autres solution que j'ai posté.
OriginalL'auteur FreeSnow
Si vous n'avez pas l'esprit à l'aide de JavaScript, vous pouvez utiliser l'approche de l'un des articles suivants:
http://james.padolsey.com/javascript/jquery-plugin-autoresize/
http://scvinodkumar.wordpress.com/2009/05/28/auto-grow-textarea-doing-it-the-easy-way-in-javascript/
Mais à partir de vos quêtes je suppose que vous voulez pur CSS solution.
Ensuite, vous pouvez simplement imiter appereance de textarea à l'aide de simples div et css suivant (si vous voulez juste pour l'affichage du texte):
Il est impossible en CSS (même avec CSS3). Vous devez recourir à l'aide d'un petit morceau de JavaScript.
OriginalL'auteur Eskat0n
Je suppose
name
attribut n'est pas utilisé. Vous pouvez utiliser cette alternative (HTML5):http://jsfiddle.net/JeaffreyGilbert/T3eke/
jsfiddle.net/JeaffreyGilbert/T3eke/1
OriginalL'auteur Jeaf Gilbert
À l'aide de la redimensionner la propriété travaille ces jours-ci:
OriginalL'auteur Dwayne Forde