2012-08-22 22 views
7

Estoy tratando de resolver el problema clásico de embalaje/mochila de caja con un diseño de CSS.Embalaje de caja con CSS

Me gustaría organizar muchas cajas de forma que se minimice el espacio en blanco entre los elementos, como este;

Image describing what I am trying to acheive http://tydus.net/img/xaZll.png

CSS3 columnas funcionan muy bien aquí - cajas están dispuestas de forma secuencial, pero todos los espacios en blanco se consume de manera eficiente. Hay un pequeño problema: las cajas se "cortan" o abarcan varias columnas. No puedo hacer eso.

Utilicé el div.clearer clásico después de algunas cajas, pero eso no tuvo ningún efecto, los cuadros aún se extendían sobre esas columnas CSS3. Hay una propiedad CSS columna de envergadura, pero no es compatible con cualquier navegador todavía; (

Opcionalmente, podría definir las columnas mí mismo y disponer las cajas a mano, pero en realidad las cajas de cambiar la altura con mucha frecuencia

.

Última pregunta: ¿hay una manera de organizar las cajas de una manera que minimiza el espacio en blanco entre las cajas usando CSS puro

Gracias

+0

¿Están los cuadros de elementos de nivel de bloque? –

+0

Sí, son solo div's. Experimenté con pantalla: bloquear y visualizar: bloque en línea. – xconspirisist

+5

Realísticamente, solo use JavaScript: http://masonry.desandro.com/ – thirtydot

Respuesta

2

Aunque no he probado a mí mismo, sin embargo, una respuesta posible puede ser el uso de?! el jQuery Masonry plugin. Esto parece ajustarse a los requisitos que usted indica.

Hacer esto en CSS puro y HTML será muy difícil, probablemente deba dejar ir algunos deseos/requisitos ...

+0

O use el isótopo "hermano mayor" de Masonry, que puede hacer diseños de mampostería y mucho más. Es fácil de implementar. Otra alternativa es la galería jQuery Tiles que también se puede usar con texto. – Systembolaget

Cuestiones relacionadas