Comment redimensionner une div automatiquement à la taille de son contenu lorsque le contenu de la div ont changé?

À l'instant, j'ai cette DIV avec un formulaire d'inscription centré sur la page. Le contenu de la DIV venir à partir d'un ascx-page. Cela se fait très bien l'affaire.
Maintenant, si l'utilisateur essaie de remplir un nom qui n'est pas unique, un message d'erreur est ajouté par certains jQuery à côté du champ nom d'utilisateur. Cela casse la mise en page de la DIV, depuis les matières sont plus larges que ce qu'ils utilisées pour être.
J'ai donc googlé mon chemin, mais je ne peux pas trouver une solution pour cela.

Quelqu'un peut-il m'aider à trouver une belle façon de le faire (pseudo-HTML/js):

<div id="myCenteredDiv" onChangeContents="resizeToNewSize()">
  <!-- div contents -->
</div>

<script type="text/javascript">
  function resizeToNewSize() {
    $("#myCenteredDiv").animateToSize($("#myCenteredDiv").contentWidth, 
      $("#myCenteredDiv").contentHeight);
  }
</script>

Je suis à la recherche de la "onChangeContents" méthode (et/ou de l'événement) et la "div.contentWidth de la propriété".

Merci beaucoup de m'aider!

mise à jour: essayer d'expliquer le problème plus clairement

Disons que j'ai de ce DIV:

<div id="myDiv">
  <form ...>
    Enter your name: <input id="txtYourName" type="text" name="YourName" value="" />
    <span id="errorYourName"></span>
    <input type="submit" ... />
  </form>
</div>

Et disons que j'ai cet extrait de jQuery:

$(document).ready(function() {
  $("#txtYourName").live("blur", function() {
    if (validateInput($("#txtYourName").val())) {
      $("#errorYourName").html("");
      //entry 1
    } else {
      //entry 2
      $("#errorYourName").html("This name is not valid.");
    }
  });
});

...où validateInput(value) retourne true pour une valeur valide.

Bien maintenant. Le SimpleModal plugin prend la div et le place au centre de la page, avec une certaine largeur et la hauteur de toute façon il lit le contenu de la div. De sorte que le div n'est pas plus large que la zone de saisie, car la plage est vide pour le moment.

Lorsque la boîte de saisie perd le focus, un message d'erreur est mis dans la durée. Ensuite, cela casse la mise en page de la div.

Je pourrais mettre le code dans entry 1 qui redimensionne le div de retour avec une animation d'une certaine taille lorsque le message d'erreur a été effacé, et le code dans entry 2 qui redimensionne la div pour une taille plus grande, de sorte que le message d'erreur sera adaptée.

Mais ce que j'aimerais le mieux est une façon de dire si le contenu à l'intérieur de la div ont changé, et s'adapter à la div en conséquence, d'animation et automatiquement.

Des idées? Merci encore.

avez-vous essayé le réglage de la css à mi-largeur de la propriété au lieu de la largeur de la propriété?
Est-ce div délimitée par une autre div de largeur fixe?
Comment est la DIV style? Est-ce à l'aide de dimensions fixes?
Je suis à l'aide de la SimpleModal plugin jQuery. Vous ne savez pas s'il utilise un fixe div, mais je peux le redimensionner à l'aide animate() joliment.
Simplemodal plugin: ericmmartin.com/projects/simplemodal

OriginalL'auteur Simon | 2009-11-17