Newsgroup: it.comp.www.php
Titolo: Calcolo altezza div

Ho un div a larghezza fissa e altezza variabile, che popolo con del
testo ricavato dinamicamente
Esiste un modo per sapere (eventualmente anche con un margine di
arrotondamento) l'altezza del div una volta riempito di testo?
Non so se può servire, ma pongo che l'altezza del font (e quindi delle
righe) sia fissa.

 arrotondamento) l'altezza del div una volta riempito di testo?
Solo se il font usate e` a spaziatura fissa (courier, fixed, ...)
Bye.

 ha detto:

Se conosci il numero di righe e l'altezza di ogni riga puoi fare un
calcolo di massima, ma a che ti serve saperlo?
Francesco Mazzi
Webmaster di AltroPC.it - 
http://www.altropc.it
 
Dev.Staff di E-Xoopport - 
http://dev.e-xoopport.it


appunto :
overflow:auto;
se e' piu lungo chi se ne frega


 arrotondamento) l'altezza del div una volta riempito di testo?
Lo puoi sapere solo lato client perche' la dimensione occupata
realmente dipende dal browser.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.

 calcolo di massima, ma a che ti serve saperlo?
ok per l'altezza delle righe, è il numero delle stesse che mi manca
se le sapessi, il problema sarebbe risolto
A cosa mi serve saperlo?
Allora, diciamo che è una pagina di visualizzazione di un articolo
Il testo viene recuperato da una tabella di db
Le foto da un'altra tabella
Le foto sono impaginate una sotto all'altra in una colonna a dx
rispetto al testo
Vorrei che fossero visualizzate solo tot foto, in modo tale che la loro
colonna non superi in altezza il testo
In questo modo, sapendo l'altezza del div del testo e di ogni foto,
potrei avere una stima ragionevole di quante foto visualizzare
Spero di essere stato chiaro

 realmente dipende dal browser.
Ok, ma non si può avere cmq una stima senza lavorare client-side?




No.
Ci sono tutta una serie di variabili che incidono sulla visualizzazione
lato client, che a priori non puoi sapere.
-- 
~ Tenete la morte lontano dalle strade. Guidate sul marciapiede.


non solo ma dipendono da che size di caratteri ha messo l'utente
metti altezza larghezza nel div overflow:auto e te lo
6 tolto dalle palle se e' piu lungo non ti rvina la pagina, ma viene fuori
un falso frame
con una barra di scorrimento


 non solo ma dipendono da che size di caratteri ha messo l'utente
Questa è appunto una delle variabili in questione; ma non l'unica.
-- 
~ Il lavoro è quel lasso di tempo che intercorre tra una pausa caffè
 e l'altra.

il problema è che ricavare l'altezza mediante script client-side è
un'azione successiva all'elaborazione del php
visto che il valore dell'altezza mi serve al'interno del php, non me ne
farei niente se ricavato successivamente
o sbaglio?

 lato client, che a priori non puoi sapere.
il problema è che ricavare l'altezza mediante script client-side è


 ne farei niente se ricavato successivamente
La domanda e', perche' ti serve di conoscere quel valore in PHP?


 o sbaglio?
Non sbagli, ma questo non toglie che server-side non puoi farlo, per i
motivi sopra enunciati.
E personalmente credo che la motivazione per la quale vorresti ottenere
tale dato, parta da premesse sbagliate.
Comunque, se proprio ci tieni a realizzare una cosa del genere, puoi farlo.
Ma il campo di applicazione è client-side, non certo server-side.
-- 
~ Non ci sono certezze, solo ragionevoli probabilità. (W. Howe)

Probabilmente allora sbaglio qualcosa a livello concettuale
Riporto quello che vorrei realizzare, e senza ricorrere (per scelta
stilistica e gusto personale) a overflow:auto
[mi quoto]
Allora, diciamo che è una pagina di visualizzazione di un articolo
Il testo viene recuperato da una tabella di db
Le foto da un'altra tabella
Le foto sono impaginate una sotto all'altra in una colonna a dx
rispetto al testo
Vorrei che fossero visualizzate solo tot foto, in modo tale che la loro
colonna non superi in altezza il testo
In questo modo, sapendo l'altezza del div del testo e di ogni foto,
potrei avere una stima ragionevole di quante foto visualizzare
Spero di essere stato chiaro
[/mi quoto]
Evidentemente c'è un modo per realizzare la cosa, ma devo essermi
chiuso in un ragionamento troppo contorto!

 chiuso in un ragionamento troppo contorto!
Ho seguito il thread, il mio precedente post teneva conto di ciò che avevi
già detto.
-- 
~ Neanche il futuro e' piu' quello di una volta.

 colonna non superi in altezza il testo
Dipende molto dalla quantità di testo. Se il tuo testo è generalmente
breve, puoi decidere che i tuoi div hanno una certa altezza (chessò, 500
px?), quindi calcolando l'altezza delle immagini, bordi, padding,
margini sai quante ne puoi inserire in questo spazio e del testo te ne
sbatti.
Oppure realizzi una struttura flessibile che si allunga automaticamente.
Ad ogni modo non puoi sapere quanto verrà alto il div a priori, con
nessun metodo, anche perché cambiere a seconda del browser, sistema
operativo, caratteri installati, impostazioni dell'utente... troppe cose
di cui tenere conto, quindi levatelo tranquillamente dalla testa! Devi
aggirare la questione alternativamente.
Stéphane

 aggirare la questione alternativamente.
Semplicemente, se proprio vuole realizzarla, non deve farlo server-side ma
client-side.
-- 
~ Religions change, but beer and wine remain.
(Harvey Allen)

 client-side.
Affidarsi al client-side per la visualizzazione equivale ad andare e
cercarsi grane e belle grosse...
Stéphane

 cercarsi grane e belle grosse...
L'OP vuole caricare un tot di immagini in base all'altezza che occuperà un
div sul *client*. Ergo, è una cosa da fare client-side, non ci sono altri
mezzi per farlo.
Non si tratta di "cercarsi grane" o meno: il client in questo caso è il
contesto in cui tale operazione va fatta.
-- 
~ "Quando i morti camminano, signori, bisogna smettere di uccidere.
O si perde la guerra." (Zombie)