Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Avere layout a colonne tipo social network

    Salve. Ho organizzato una pagina del mio sito su tre box affiancati e di uguale larghezza sfruttando la funzione float. I box sono contenuti in un div "main" contenitore e quindi il quarto box va automaticamente a capo iniziando una nuova riga sotto la prima colonna.
    Succede però che le altezze di questi box sono potenzialmente differenti tra loro e, con il solo float ottengo che il box che va a capo si colloca sotto a quello più alto della riga superiore, invece che sotto al "primo che offre spazio sotto di sé", come succede sui social network visualizzati su più colonne.
    Ho introdotto un clear: both ogni tre box, ottenendo un allineamento orizzontale dei bordi superiori dei tre box successivi, ma sempre sotto a quello più alto.
    Vorrei sapere se è possibile collocare automaticamente il nuovo box "sul punto libero più alto del div "main" contenitore.
    Potrei creare tre colonne "submain" ma perderei la praticità di avere i singoli box automaticamente in ordine di data da sinistra a destra nella pagina...

  2. #2
    Moderatrice di CSS L'avatar di ResianTaxidrive
    Registrato dal
    Oct 2007
    residenza
    Udine
    Messaggi
    2,766
    Con css e basta non mi risulta si possa fare, dovresti usare qualche libreria js tipo questa
    http://www.inwebson.com/demo/blocksit-js/demo2/

  3. #3
    Un paio di JS li ho provati, ma per come è impostato il div main contenitore, pare non andare bene: la prima riga di box deve partire a una certa distanza dal margine superiore del main, ma non riesco a settare questo valore, inoltre il main è inserito tra un header e un footer fissi nella finestra, e se applico il JS scorre tutta la pagina, non soltanto il main con i box dentro.

  4. #4
    “Che le cose siano cosi, non vuol dire che debbano andare così. Solo che quando si tratta di rimboccarsi le maniche e incominciare a cambiare, vi è un prezzo da pagare. Ed è allora che la stragrande maggioranza preferisce lamentarsi più che fare”.

    Giovanni Falcone

  5. #5
    Il primo link potrebbe aiutarmi, solo che ogni colonna contiene più box di altezze che devono essere liberamente differenti in base ai contenuti.
    Magari se riesco a mettervi una schermata della situazione, rendo meglio la problematica.
    Sono pressoché convinto che senza JS non vado da nessuna parte in questo caso, ma JS sblocca tutti i div della pagina a scorrere, non soltanto quello main che contiene le tre colonne di box, e inoltre fa partire tutto con margin top = 0.

  6. #6
    Quote Originariamente inviata da Gas75 Visualizza il messaggio
    ......ma JS sblocca tutti i div della pagina a scorrere, non soltanto quello main che contiene le tre colonne di box, e inoltre fa partire tutto con margin top = 0.
    Non è detto bisogna vedere le istruzioni inserite nel JS.
    Fatti spostare da un moderatore in JS e senti come la pensano gli esperti li
    “Che le cose siano cosi, non vuol dire che debbano andare così. Solo che quando si tratta di rimboccarsi le maniche e incominciare a cambiare, vi è un prezzo da pagare. Ed è allora che la stragrande maggioranza preferisce lamentarsi più che fare”.

    Giovanni Falcone

  7. #7
    Ho risolto introducendo tre item colonna che accorpano i box nell'ordine desiderato.

  8. #8
    Gas75 meglio utilizzare il flexbox

  9. #9
    Se ho tempo di impararne l'uso lo provo, grazie.
    Non faccio siti per professione, quindi cerco il risultato più breve sfruttando quello che so fare.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.