Comment obtenir la hauteur rendue d'un élément ?

Comment obtenir la hauteur rendue d'un élément ?

Disons que vous avez un élément " div&gt " avec du contenu à l'intérieur. Ce contenu va étirer la hauteur de l'élément <div>. Comment obtenir la hauteur "rendue" lorsque vous n'avez pas explicitement défini la hauteur ? J'ai évidemment essayé :

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

Existe-t-il une astuce pour faire cela ? J'utilise jQuery si cela peut aider.

Essayez-en un :

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

clientHeight inclut la hauteur et le padding vertical.

offsetHeight comprend la hauteur, le rembourrage vertical et les bordures verticales.

scrollHeight comprend la hauteur du document contenu (qui sera plus grande que la simple hauteur en cas de défilement), le remplissage vertical et les bordures verticales.

Commentaires (6)
Solution

Il devrait juste être

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

avec jQuery. Cela permet de récupérer la hauteur du premier élément de l'ensemble enveloppé sous forme de nombre.

En essayant d'utiliser

.style.height

ne fonctionne que si vous avez défini la propriété en premier lieu. Pas très utile !

Commentaires (8)

Avez-vous défini la hauteur dans le fichier CSS ? Si ce n'est pas le cas, vous devez utiliser offsetHeight; plutôt que height.

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