I checked your site, which btw is pretty nice, to check the sizing problem. I noticed some things so, here are my suggestions and explanation.
The fancybox behaves like a container div so it adjusts to the children divs contents.
fancybox-skin
has two immediate children divs fancybox-outer
and fancybox-title fancybox-title-inside-wrap
<div class="fancybox-skin" style="padding: 0px; width: auto; height: auto;">
<div class="fancybox-outer">
<div class="fancybox-inner" style="overflow: visible; width: 493px; height: 323px;">
<img class="fancybox-image" src="/photos/Places/Garden of the Gods/IMG_0345.jpg" alt="">
</div>
<a title="Previous" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a><a title="Next" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>
</div>
<div class="fancybox-title fancybox-title-inside-wrap" style="height: auto;">
...
</div>
</div>
The fancybox-title fancybox-title-inside-wrap
has height: auto;
set. So it keeps adjusting to comments given inside it, by increasing its height, which causes problems to your image height. To fix this set its style as height: 200px;
. Try to put !important
if it does not work. Since all this is dynamic, check css and javascript both.
Update
As per your comment, height is set to auto every time you call fancybox.update(). So you need to modify your fancybox options, to prevent auto resizing. Here is what you can do :
$("a.yourlink").fancybox({
'width' : 500,
'height' : 200,
'autoScale' : false, //if using older fancybox
'autoSize' : false, //if using newer fancybox
'autoDimensions' : false,
});
You should look into the options given here for fancybox 2.0+ .