No me importa una tecnología específica, podría ser JS, CSS o incluso algunos atributos html no estándar y malvados. Solo quiero que input
crezca si el usuario escribe sobre el borde derecho.Cambiar el tamaño de la entrada para que se ajuste a su contenido
Respuesta
Tal vez alguien tiene una mejor manera, pero se puede intentar esto:
Ejemplo:http://jsfiddle.net/aAueA/1/
var input = document.getElementsByTagName('input')[0];
input.onkeypress = input.onkeydown = function() {
this.size = (this.value.length > 10) ? this.value.length : 10;
};
Esto establece en un tamaño mínimo de 10 y se expande si vas más allá de 10 caracteres.
funciona Probablemente es mejor con una fuente de ancho fijo:
input {
font-family:Courier;
}
Deje el navegador haga el cálculo de la anchura mediante el uso de un conjunto div
con contenteditable
a true
.
<div class="pseudo-input" contenteditable="true">Resizes to my content!</div>
No debe haber problemas con el apoyo del navegador http://caniuse.com/#feat=contenteditable
También puede crear div elemento, copiar su estilo de entrada a ella y utilizar sus dimensiones para cambiar el tamaño de entrada. (Elegido múltiples usos this solution).
var input = $('input'),
dummy = $('<div style="position:absolute; left: -1000%;">').appendTo('body');
['font-size', 'font-style', 'font-weight', 'font-family',
'line-height', 'text-transform', 'letter-spacing'].forEach(function(index) {
dummy.css(index, input.css(index));
});
input.on('input', function() {
dummy.html(this.value);
input.width(dummy.width());
});
UPD: mejor usar pre en lugar de div para seguir el tamaño de los espacios.
¡Gracias por esta solución! Sin embargo, no tiene en cuenta los espacios en blanco consecutivos. Edité tu publicación y agregué "white-space: pre" al dummy div. Además, es posible que se necesite un ancho adicional de algunos píxeles para evitar que el cursor desaparezca. – Kafoso
- 1. Cambiar el tamaño de la altura UIWebView para que se ajuste al contenido
- 2. Cambiar el tamaño de un div para que se ajuste al contenido con la altura máxima
- 3. jquery cambiar el tamaño de la ventana para que se ajuste a los contenidos
- 4. ¿Cómo cambiar el tamaño de la imagen para que se ajuste a la celda UITableView?
- 5. ¿Cómo detener la reducción de Tkinter Frame para que se ajuste a su contenido?
- 6. iTextSharp: ¿Cómo cambiar el tamaño de una imagen para que se ajuste a un tamaño fijo?
- 7. Cambiar el tamaño del panel para que se ajuste a los elementos de las ventanas
- 8. ¿Cómo cambiar el tamaño de NSTextView según su contenido?
- 9. ¿Cómo puedo decirle a NSTextField que aumente su tamaño de fuente para que se ajuste a su texto?
- 10. ¿Cómo escalar/cambiar el tamaño del texto para que se ajuste a un TextView?
- 11. ¿Cómo obtener un div para cambiar el tamaño de su altura para que se ajuste al contenedor?
- 12. Redimensionar automáticamente NSTabView para que se ajuste a la vista de contenido
- 13. ¿Cómo cambiar el tamaño de WebView según su contenido?
- 14. iframe cambio de tamaño para adaptarse a su contenido
- 15. ¿Cómo hago que el contenido de UIWebView se ajuste al tamaño de la pantalla del iPhone?
- 16. Qt: cómo cambiar el tamaño de una ventana a su nuevo contenido
- 17. ¿Es posible cambiar el tamaño del texto para que se ajuste a un div de tamaño fijo?
- 18. Cambiar el tamaño del contenido del sitio web externo para que se ajuste al ancho del iFrame
- 19. Obtener ListBox para cambiar el tamaño con la ventana, pero no cambiar el tamaño del contenido
- 20. ¿Cómo cambiar el tamaño de un UIImageView para que se ajuste a la imagen subyacente sin moverla?
- 21. ¿Cómo calcular el ancho de un elemento HTML de entrada para que coincida con el tamaño de su contenido?
- 22. Tamaño automático ElementHost a su contenido
- 23. ¿Cómo se reduce el contenido para que se ajuste a un div?
- 24. ¿Cómo hacer que el ancho de una columna se ajuste a su contenido en la tabla HTML?
- 25. ¿Cómo puedo crear una vista de texto que cambie automáticamente su tamaño de fuente para que se ajuste al espacio?
- 26. ¿Cambiar el contenido de UITableView sin cambiar su contentOffset?
- 27. ¿Cómo puede Silverlight cambiar el tamaño del contenido de texto para que encaje?
- 28. Cambiar el tamaño del contenido de la página para que quepa en una página de impresión
- 29. ¿Cómo cambiar el modelo de usuario predeterminado de django para que se ajuste a mis necesidades?
- 30. iOS: cambiar el tamaño de UIWebView para adaptarse al contenido?
no funciona para caracteres CJK. –
Versión más concisa de la función: 'this.size = Math.max (this.value.length, 10);' – Meisner