Por lo general, usando CSS, armar un texto combinado con una imagen es bastante sencillo aunque a veces, ajustar ambas cosas se vuelve una tarea titánica.
Supongamos que tenemos dos imágenes, una de 128x128 y otra de 256x256 y que queremos usarlas como "adorno".
Usando la propiedad float, podemos colocar el texto "rodeando" la imagen, ya sea a un lado o al otro. Esto es lo que hace Blogger cuando nos pide que elijamos un diseño al subirlas pero podemos hacerlo con cualquiera, basta darle un estilo:
<div style="text-align: justify;"><img src="URL_imagen" style="margin-right: 10px; float: left;" /> ... el texto a mostrar ... </div>
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum arcu felis, semper sed vestibulum eget, gravida id tortor? Mauris eleifend suscipit tellus, a tempor lorem euismod eget? Maecenas porta rutrum faucibus. Pellentesque eget rhoncus est. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sem est, laoreet non pharetra in, porttitor sed turpis pellentesque.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum arcu felis, semper sed vestibulum eget, gravida id tortor? Mauris eleifend suscipit tellus, a tempor lorem euismod eget? Maecenas porta rutrum faucibus. Pellentesque eget rhoncus est. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sem est, laoreet non pharetra in, porttitor sed turpis pellentesque.
Sólo invertimos los códigos, uno flota a la izquierda y tiene un margen a la derecha, el otro flota a la derecha así que tiene un margen a la izquierda pero ¿qué pasa si por cualquier motivo cambiamos el tamaño o el tipo de fuente del texto?
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum arcu felis, semper sed vestibulum eget, gravida id tortor? Mauris eleifend suscipit tellus, a tempor lorem euismod eget? Maecenas porta rutrum faucibus. Pellentesque eget rhoncus est. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sem est, laoreet non pharetra in, porttitor sed turpis pellentesque.
Se descalabra todo y claro, deberíamos "redimensionar la imagen para mantener el efecto. La rehacemos, la subimos otra vez ... demasiado trabajo.
También podemos "redimensionarla" usando los atributos width y height.
Basta colocar el ancho y el navegador se encargará de calcular el alto de forma automática para mantener la proporción. O colocar sólo el alto. O colocar ambos valores y cambiar esa proporción:
original = 256x256 --> 100x100
<img width="100" src="URL" />
<img height="100" src="URL" />
<img width="100" height="100" src="URL" />
<img width="50" height="100" src="URL" />
<img width="100" height="50" src="URL" />
Sea como sea, deberíamos "recalcular" el tamaño de manera individual ... sigue siendo mucho trabajo.
Sin embargo, hay una técnica explicada en JON TANgerine que nos facilita hacer esto de manera genérica, usando CSS. Para ello, en lugar de utilizar pixeles para dimensionar las imágenes, utilizaremos la unidad em lo que significa que el tamaño de la imagen tendrá una relación con el tipo de fuente del texto.
¿Cómo calculamos eso? No hay otra forma que usar la aritmética o una calculadora online.
Supongamos que estoy satisfecho con el modelo creado. Conozco dos datos, sé que la imagen debe tener 128x128 y que la fuente del texto tiene 14 pixeles. Uso una fórmula de conversión:
(1 / TamañoFuente) * AnchoImagen = AnchoImagen en unidades em (1 / TamañoFuente) * AltoImagen = AltoImagen en unidades em
en este caso:
(1 / 14) * 128 = 9.14
Así que puedo cambiar el código a usar:
<div style="text-align: justify;"><img src="URL_imagen" style="margin-right: 10px; float: left; width: 9.14em; height: 9.14em;" /> ... el texto a mostrar ... </div>
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Vestibulum arcu felis, semper sed vestibulum eget, gravida id tortor? Mauris eleifend suscipit tellus, a tempor lorem euismod eget? Maecenas porta rutrum faucibus. Pellentesque eget rhoncus est. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis sem est, laoreet non pharetra in, porttitor sed turpis pellentesque.
De esta manera, el texto y la imagen mantendrán una relación pre-establecida, sin importar ni el tipo de fuente ni el tamaño de la imagen que usemos.
Bueno, no sé si se publicará este comentario, porque ya publiqué como tres y non´están... ahhhh!! Cuando anduve chismoseando por las aplicaciones que publicó hace poquito, encontré que esta herramienta está en una api de adobe air: http://jameswhittaker.com/projects/ Me pareció interesante, pero no imaginé que podía servir para esto, qué bueno. Saludos.
:D hoy te he extrañado, todo por un maldito antivirus, me quedé sin mi CPU, gracias al cielo que tengo un amigo aquí, porque si espero a la mesa de ayuda, muero en el intento grrrrrrrrrrrr Qué bien explicado, fantástico JM!!!...tu cabecita abierta para tanto código...mis besitos!!!
Nacido en el tercer mundo. Un santo varón. Buenos Aires. Los elefantes. Las golondrinas de Plaza de Mayo. Me chupo el dedo.
El tiempo es veloz. ¿No ves que ya no somos chiquitos? Despedida de la infancia. Todo es efímero. Juguetes perdidos. Dime quién me lo robó. Aprendizaje.
Soy un hippie. Rutas argentinas. Sobredosis de TV. Raros peinados nuevos. Más de cien mentiras. Delirium tremens.
Ciudad de pobres corazones. El karma de vivir al sur. Mundo de quimeras. Oh Dios, ¿Qué puedo hacer?
Cuando era más joven. Los mayores del mundo. Botas locas. Rejas electrificadas. Cerca de la revolución. Contra todos los males de este mundo. La casa desaparecida. Tumbas de la gloria. Vencedores vencidos. Carguen, apunten, fuego. Estás frito angelito. A lo mejor aún te acuerdas.
Ah, te vi entre las luces. Muchacha. Amor se llama el juego. Juego de seducción. Mi genio amor. Prométeme que nunca me dirás adiós. Pequeñas delicias de la vida conyugal. Toda la vida tiene música hoy. Es hora de levantare, querido (dormiste bien?).
Resumiendo.
Mi sueño de hoy. La sed verdadera. La búsqueda de la estrella. Todos juntos. ¡Ah! Basta de pensar.
8 comentarios:
Bueno, no sé si se publicará este comentario, porque ya publiqué como tres y non´están... ahhhh!!
Cuando anduve chismoseando por las aplicaciones que publicó hace poquito, encontré que esta herramienta está en una api de adobe air:
http://jameswhittaker.com/projects/
Me pareció interesante, pero no imaginé que podía servir para esto, qué bueno.
Saludos.
Pués este ha salido :D
Muy buena la aplicación de Air, justo, hace esto, convertir las unidades.
Genial JMiur! me biene muy bien poder ajustar las imágenes al texto :D ¡Y con lo bien que lo explicas! :-D
Pués hay que felicitar a quien se le ocurrió esta técnica. Muy inteligente de su parte :)
:D hoy te he extrañado, todo por un maldito antivirus, me quedé sin mi CPU, gracias al cielo que tengo un amigo aquí, porque si espero a la mesa de ayuda, muero en el intento grrrrrrrrrrrr
Qué bien explicado, fantástico JM!!!...tu cabecita abierta para tanto código...mis besitos!!!
¿Problemas, Graciela? Espero que se solucionen pronto :)
I love You!Ich liebe dich JMiur!!!!
Besos enormes tesourooo!!!
Tu e Gem@ são meus genios despois de Ariane y a Elke Batista!
:D
¿Quiere dejar un comentario?
recuerde que los comentarios están siendo moderados y serán publicados a la brevedad ...
Nota: sólo los miembros de este blog pueden publicar comentarios.
Si le gusta ir a lo seguro utilice este botón para abrir los comentarios en una ventana modal en esta misma pagina.
Si añora tiempos idos, use este enlace para agregar un comentario al viejo estilo ...