Activation de l'événement de redimensionnement sur impression

J'ai un div dans lequel je crée un graphique en utilisant protovis . Le div a une width: 100% et height: 100% et le code pour créer le graphique utilise $('#chart').width() et $('#chart').height() pour obtenir la taille de la div Au moment du rendu et complétez la page avec le graphique. Je capture l'événement de redimensionnement sur la fenêtre et ajoute le div et le graphique afin qu'il redimensionne lorsque la fenêtre redimensionne.

Maintenant, j'ai besoin d'imprimer. J'aurais espéré que lorsque le navigateur rendrait la page pour l'imprimante, il émettra un redimensionnement, mais pas le cas, au moins Safari et Firefox ne le font pas. Chrome fait quelque chose d'étrange dans lequel il redimensionne seulement la hauteur mais pas la largeur. Existe-t-il un moyen de déclencher ce comportement juste avant l'impression?

MODIFIER. Considérez le html suivant

 <html> <head> <title>Resize</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $('#chart').resize(function() { $(this).html('chart size is ' + $('#chart').width() + ' x ' + $('#chart').height()); }) }); $(window).resize(function() { $('.resizable').resize(); }); </script> <style type="text/css"> #chart { width: 100%; height: 100%; background: gray; border: 1px solid black;} </style> </head> <body> <div id="chart" class="resizable"> </div> </body> </html> 

Lorsque je redimensionne la fenêtre, le contenu de la division change. Lorsque je l'impression, le processus de rendu ne déclenche pas l'événement de redimensionnement.

Peut-être

 <style type="text/css"> #chart { width: 100%; height: 100%; background: gray; border: 1px solid black;} </style> <style type="text/css" media="print"> #chart { width: 100%; height: 98%; background: gray; border: 1px solid black;} </style>