Salve a tutti, è il mio primo messaggio in questo forum, che seguo da diverso tempo come spettatore.
Il mio problema abbraccia un pò la natura stessa dei css e della loro disposizione nella pagina, ma penso sia una cosa risolvibile tramite javascript, per questo scrivo a voi per cercare di venir fuori da una situazione che mi sta mandando ai matti...
In pratica nella mia pagina ho più blocchi (div) e la mia problematica è quella di avere tutte le colonne allineate all'altezza maggiore. Ho bisogno di averle tutte alte uguali per definire in modo adeguato la grafica del sito senza avere colonne con sfondi mancanti o altro. Per mia fortuna, o meglio per scelta, la colonna più alta è quella dei contenuti.
Ora tramite javascript ho fatto in modo di leggere l'altezza dell'elemento div più alto
(var altezza = document.getElementById('id1').offsetHeight)
e di creare un nuovo div con quella stessa altezza.
document.write ('<div id = "id2" style = "height:' + altezza + 'px;"></div>')
Fin quì nessun problema, ho ottenuto quello che volevo.
Ho notato però che nel caricare la pagina il browser impiega del tempo e, soprattutto in presenza di immagini, al momento della "lettura" dell'altezza del div non tiene conto dello spazio verticale occupato dalle immagini non ancora disposte.
Le mie colonne pertanto vengono disegnate non tenendo conto dell'altezza delle immagini, ma una volta caricata se effettuo un refresh la pagina viene visualizzata correttamente.
Finora ho provato a inserire un qualcosa che rallentasse la lettura prima di disegnare il secondo div con la funzione setTimout con scarsi risultati. Ho provato diverse altre soluzioni ma ancora non ne sono venuto a capo...![]()
Anche se non è una delle soluzioni più eleganti del mondo avevo anche pensato di inserire a fine pagina delle istruzioni che mi ricaricassero la pagina una volta soltanto.
Però boh...
suggerimenti?
di sicuro qualcosa di più rapido e semplice mi sfugge...

Rispondi quotando