Hola a todos Creo que he conseguido algo decente para lo que comentaba de la página de thumbnails, cada uno con texto variable y que sea fluido, vamos que a mayor tamaño de ventana mas entren por fila. El problema era que si los flotamos y uno tiene mas texto que otro, los que mas texto tienen toman mas altura y se nos estropea el asunto porque los flotados se quedan "atascados" cuando se encuentran un con mas altura.
Agradeceré comentarios y correcciones, que si dejamos esto apañado va a ser bonito :) Os dejo el link de el resultado [1] que está con algunos apaños para ver las posibilidades de maqueo. Al grano: Lo primero lo he convertido todo en una lista que creo que semánticamente es mas apropiado. Para últimas versiones de navegadores la solución era sencilla: li{ width: 150px; display: inline-block vertical-align: top } Limitamos el ancho de los elementos para que todos tengan el mismo ancho (seguramente el de la imagen mas algún padding), lo que llevará a que los textos largos pasen a varias lineas y se provoque la diferencia de altura. Con el display: inline-block, conseguimos, por un lado que al ser block nos acepte la anchura del elemento, pero por otro que se comporten como si estuvieran flotados, que se vayan apilando a la izquierda a medida que les deje el ancho de ventana, pero respetando la altura, ya que no es que estén flotados, si no que son elementos inline y todos tienen origen en la base de la linea. Con el vertical-aling: top; conseguimos que en vez de alinearse en la base, lo cual descuadra y deja las imágenes a diferentes alturas (según cuanto texto tengan debajo), se alinea todo arriba y las imágenes quedan bien alineaditas. Esto funciona para IE8, FF3, Opera y safari por lo menos. Tenemos el problema de que no solo IE6 y 7 no aceptan el display: inline-bock si no que versiones anteriores a FF3 tampoco. Para hacerlo crossbrowser el css y el código se va a enguarrar un poquillo, bueno. Para IE 6 y 7 le añadimos esto: zoom:1; *display:inline; tiene que ver con el hasloyout, no acabo de entender muy bien como rula, pero rula. Y para que versiones anteriores de FF lo pillen tenemos que añadir esto: display:-moz-inline-stack; mejor meterlo por encima del display: inline-block para que FF3 y posteriores se queden con display: inline-bock; con lo que quedaría así: li{ width: 150px; display:-moz-inline-stack; /*para FF anterior al 3*/ display: inline-block zoom:1; /*para IE anterior a 8*/ *display:inline; /*para IE anterior a 8*/ vertical-align: top } Al utilizar el display:-moz-inline-stack; FF2 tiene un comportamiento un poco raro que no logro entender, igual me podéis ayudar aquí, y es que si tenemos: <li><img src="imagen.jpg" width="150" height="200" /><br /> pie de fotooo</li> y aplicamos display:-moz-inline-stack; FF2 coge la imagen y la pone como imagen de fondo del <li> y el texto queda por encima de la imagen. Para evitar esto no he visto otra salida que poner un span recogiendo el contenido de <li> y queda así: <li><span><img src="imagen.jpg" width="150" height="200" /><br /> pie de fotooo</span></li> semanticamente nos sobra el span pero bueno, es lo que necesitamos para que FF2 lo pille bien. si lo que tenemos dentro de <li>, recogiendo imagen y texto, es un <a>, porque normalmente los thumbnails son para clickar, pues ya está, no problemo, no necesitamos el span extra. A ver que os parece todo esto, creo que es una solución bastante digna al tema, creo que hacía falta y, yo por lo menos, no he encontrado nada por aquí y por allí. Saludos a todos. [1] http://www.eragin.com/txo/x/xxx2.html _______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://lists.ovillo.org/mailman/listinfo/ovillo