"Justificar" Divs

DarkSoldier

Buenas gente,

Pues tengo una duda... os pego un fiddle y me baso en eso

http://jsfiddle.net/D62L8/

y aqui el resultado (os recomiendo abrir este y no en pekeñito como el de arriba

http://jsfiddle.net/D62L8/embedded/result/

Como puedo hacer para que los divs se justifiquen?

Gracias!

eXtreM3

No entiendo qué quieres decir con "justificar" los divs, he visto el código y el ejemplo... puedes explicarlo mejor?

DarkSoldier

Sip perdona, me refiero a que el primer div de cada fila empiece siempre en un sitio (cosa que ya hace) y los últimos terminen también en el mismo sitio, ajustandose los margin automaticamente.

no se si me explicado,

gracias!

1 respuesta
eXtreM3

#3 mmmm, lo que buscas es un float:right a la última capa de cada fila?

DarkSoldier

no exactamente, porke eso no haria que las demas imagenes hicieran bien el margin no?

#6 no te entiendo :S el caso es k el ancho de los divs es muy variable, por lo que a veces habran 3,4 o 5 divs por fila

r2d2rigo

Poner el width de los divs a mano y margin auto?

1 respuesta
eXtreM3

Entonces lo que buscas es ponerle el width de las capas en % del contenedor y pista

edit: joder me explico como el ojete, sé que sabría hacerlo, pero explicarlo es xungo xD

DarkSoldier

el caso es que dentro de cada capa hay una imagen, y con la capa lo que consigo hacer es un efecto de "borde" a la imagen, si lo uso en porcentajes, el borde será muy diferente para una fila con 2 imagenes o una fila con 5 sabes?

1 respuesta
RaymaN

#8 podrías hacer un boceto real con imágenes? No me aclaro mucho pero poniendo text-align: center; a la capa contenedora de las imágenes podría valer.

DarkSoldier

#8 http://jsfiddle.net/D62L8/embedded/result/ creo que aqui se ve bien, el numero de dentro es el tamaño de la imagen (pero creo que es irrelevante xD), lo que quiero, fijate en la primera fila, hay 3 imagenes, pues quiero que en este caso, la última imagen acabe al final de la fila, y que automaticamente la imagen del medio se centrara, en el caso de la segunda fila pues no pasaria nada por que ya esta bien, fijate que la segunda acaba con el mismo margin right k left xD (hablo de la fila en general) y la última pues lo mismo que la primera..

o sea, si te fijas en las primeras imagenes de las 3 filas, ves que empiezan en el mismo sitio? pues quiero lo mismo al final, que las 3 acaben igual, que acaben en el mismo sitio, y que las capas del centro, los margins que tienen a la izquierda y derecha sean todos iguales

pd: siento explicarme tan mal de verdad xD

1 respuesta
Wasd

#10 Una imagen quizás aclare a la gente. Si no me equivoco, lo que quieres es esto:

Lo dejo aquí para que los demás puedan ayudarte mejor, pero igualmente intentaré aportar mi granito:
Puedes hacer que cada fila sea un div distinto y los sub-elementos tratarlos como <span>.
Otra cosa que puedes hacer es convertirlos en <ul><li> por cada fila y darle un display: inline en la css.
No lo he probado porque es tarde y tengo que ir al sobre, pero a lo mejor te funciona.
Si no, mañana seguimos con ello xD.

1 respuesta
DarkSoldier

#11 gracias!! Esa imagen que ha subido es exactamente como lo quiero xP

1 respuesta
EnZo

#12 Me dá que vas a tener que tirar de JS. Almenos a mí no se me ocurre la forma de hacerlo solo con CSS.

eXtreM3

Lo que no veo es, desde el punto de vista del diseñador, qué diseño es ese? Puede tener diferente número de imágenes en una fila, y pueden incluso tener distintos tamaños...

Edit: y propongo solución -> pon como mucho que haya dos opciones para cada fila, que pueda haber 3 o 4 imágenes. Controlando con php sabes cuándo va a haber 3 y cuándo va a haber 4, con lo cual le darás un ancho a unas y otro ancho a otras, pero tendrás todo controlado con php y css, sin necesidad de que intervenga js.

1 respuesta
DarkSoldier

#14 pues uno muy random xdd mi intencion es hacer una web para mis amigos y para mi, donde subir imagenes nuestras random para reirnos XD entonces... si las imagenes son mas anchas que altas y la anchura supera X, les pondra un ancho 300 y height auto, y si es mas alta que ancha y el alto supera X les pondra height 300 y width auto, por eso el width es variable, y me gustaria que las imagenes se vayan colocando solas dentro de un contenedor

2 respuestas
HeXaN

#15 Yo veo más fácil pones X cuadrados y que al pinchar te amplíe la imagen (con el plugin que hay aquí instalado en MV mismo). Así te quitas de problemas.

BLZKZ

#15 yo hago crop de la imagen, asi no tengo que andar con mierdas de esas. Todos los thumbs son iguales y al pincharlas se ven como debieran. Así por ejemplo lo hace facebook.

1 respuesta
DarkSoldier

#17 yaaa pero no se, me esta gustando el resultado xD

se aceptan consejos de como hacerlo!

muchas gracias a todos por las respuestas!

DarkSoldier

Bueno, exactamente quería esto:

http://masonry.desandro.com/

xD me han respondido casi al instante en stackoverflow

1 respuesta
EnZo

#19 Entonces yo lo entendí mal.

http://masonry.desandro.com/demos/images.html

Todas esas tienen un ancho fijo, pero que pasa si el ancho es variable? Si el ancho era variable los margenes de las imagenes tambien debian serlo. Y en plugin ese de jQuery el margen siempre es el mismo. Es por eso por lo que no te pasé esto:
http://blog.xlune.com/2009/09/vgrid/

1 respuesta
DarkSoldier

no entendiste mal #20, en principio queria hacerlo con anchos diferentes pero lo vi demasiado complejo, por que tendría que tener en cuenta tanto la anchura como la altura XD voy a ver lo que me has pasado! y muchas gracias :)

eXtreM3

Al final resultaba que todos los anchos son iguales xDDD gl

DarkSoldier

#21 "en principio queria hacerlo con anchos diferentes pero lo vi demasiado complejo" (por tu fea costumbre de no leer.)

1 respuesta
eXtreM3

#23 pero qué, si precisamente te dijimos de poner las pics con ancho fijo para que las miniaturas fueran iguales, y ahora resulta que has descubierto américa xD

(Yo leo, pero tú sigues siendo un arrogante ;))

Usuarios habituales

  • eXtreM3
  • DarkSoldier
  • EnZo
  • BLZKZ
  • HeXaN
  • Wasd
  • RaymaN