11548 sujets

JavaScript, DOM et API Web HTML5

Bonsoir,
J'ai un code HTML de ce genre (je simplifie pour l'exemple) :
<div id="test">
  <p>un bout de texte</p>
  <img src="image.jpg" alt=""/>
</div>


En CSS, je passe mon image en flottant (float:right) et mon div en overflow:hidden pour que sa hauteur s'adapte à celle de l'image.

J'aimerais obtenir la hauteur du bloc #test en JavaScript (avec jQuery), contenu flottant compris. Problème : comme l'image est flottante, elle sort du flux et sa hauteur à l'intérieur du div est de 0. Donc je me retrouve avec une valeur qui correspond uniquement au paragraphe p en faisant un $('#test').height(). Ou 0 s'il n'y a pas le paragraphe.
Comment contourner ce problème et obtenir la hauteur réelle de tout le contenu de mon bloc div, éléments flottants compris ? étant donné que l'overflow adapte la hauteur du div en conséquence, j'imagine que la valeur est récupérable quelque part...
Modifié par terzag (11 Apr 2012 - 20:47)