Come si ottiene l'altezza renderizzata di un elemento?

Come si ottiene l'altezza renderizzata di un elemento?

Diciamo che hai un elemento <div> con del contenuto all'interno. Questo contenuto all'interno sta per allungare l'altezza del <div>. Come ottieni l'altezza "resa" quando non hai impostato esplicitamente l'altezza. Ovviamente, ho provato:

var h = document.getElementById('someDiv').style.height;

C'è un trucco per fare questo? Sto usando jQuery se questo aiuta.

Prova uno di:

var h = document.getElementById('someDiv').clientHeight;
var h = document.getElementById('someDiv').offsetHeight;
var h = document.getElementById('someDiv').scrollHeight;

clientHeight include l'altezza e il padding verticale.

offsetHeight include l'altezza, il padding verticale e i bordi verticali.

scrollHeight include l'altezza del documento contenuto (sarebbe maggiore della semplice altezza in caso di scorrimento), il padding verticale e i bordi verticali.

Commentari (6)
Soluzione

Dovrebbe essere solo

$('#someDiv').height();

con jQuery. Questo recupera l'altezza del primo elemento nell'insieme avvolto come numero.

Cercando di usare

.style.height

funziona solo se avete impostato la proprietà in primo luogo. Non molto utile!

Commentari (8)

Hai impostato l'altezza nel css in modo specifico? Se non l'hai fatto devi usare offsetHeight; piuttosto che height.

var h = document.getElementById('someDiv').style.offsetHeight;
Commentari (1)