Me encuentro con un problema común con el diseño del sistema de administración de contenido personalizado.Tamaño de letra "Mejor ajuste": ¿cómo mido el ancho de una oración?
Dirijo una pequeña empresa de diseño web y con frecuencia tengo que hacer que un área determinada de un sitio web sea editable para el cliente. Por ejemplo, puede haber una barra en la parte superior de la página que anuncie las últimas noticias o ofertas que el cliente quiera editar por su cuenta.
El problema que tengo es que a menudo escriben demasiado y el texto se desborda. Tal vez estoy demasiado a la defensiva, pero en estas situaciones generalmente culpo al cliente de forma privada. Seguramente lo verifican después de actualizar el texto, darse cuenta de que no encaja y modificarlo para que así sea.
De todos modos, creo que es mi responsabilidad hacer que el sitio se vea bien, así que he estado tratando de encontrar la manera de que el texto encaje en una caja de tamaño fijo. Una forma es dar a la caja (por lo general un div
) Propiedad esta css:
overflow: auto;
pero a veces esto no es adecuada, tal como en el ejemplo descrito anteriormente, donde la barra es sólo una línea de alta.
Mi pregunta (sí, finalmente lo he hecho) es ¿cómo puedo hacer que la fuente cambie de tamaño automáticamente para que quepa en la caja?
En algunas aplicaciones (un ejemplo es Powerpoint), puede elegir la opción de "mejor ajuste" para el tamaño de fuente y la aplicación elige un tamaño que permita que el texto encaje exactamente. Básicamente estoy buscando una versión CSS, JavaScript o PHP de esto.
¡Gracias de antemano!
EDIT: Aquí está la solución - http://jsfiddle.net/Cnkfn/1/
Esto suena muy bien, gracias. Estoy tratando de hacerlo funcionar usando jsFiddle pero el botón no hace nada, ¿puedes ofrecer alguna ayuda? http://jsfiddle.net/Cnkfn/ –
Ah, no se preocupe, ya está arreglado, hice que la función fuera global para evitar las idiosincrasias jsFiddle. Esta solución es perfecta, ¡muchas gracias! http://jsfiddle.net/Cnkfn/1/ –