This is a very simple thing to do in JQuery. What you want really can't be done in Perl as the widths and heights you want are set once the html is rendered in the browser. By forcing a Perl solution, your guaranteeing that your solution will not work across browsers as the internal page size is set differently in IE, FF and Chrome. You should have Perl create the content of the HTML and link to a JS file to handle the on-screen formatting. This way you can handle screen resize events in the browser without having to go across the internet to your server just compute three width and height values.
This is a case of "when is a knife not a knife? When its a screwdriver."